From 9e377d1a6489f528eedb9d6a28aa31cd4998c51b Mon Sep 17 00:00:00 2001 From: Niklas Stich <32730297+niklasstich@users.noreply.github.com> Date: Sun, 24 Nov 2024 04:43:12 +0100 Subject: [PATCH] Only consider public constructors in FactoryAttribute.cs --- Moyou.Aspects/Moyou.Aspects.Factory/FactoryAttribute.cs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Moyou.Aspects/Moyou.Aspects.Factory/FactoryAttribute.cs b/Moyou.Aspects/Moyou.Aspects.Factory/FactoryAttribute.cs index 860fcf5..3766300 100644 --- a/Moyou.Aspects/Moyou.Aspects.Factory/FactoryAttribute.cs +++ b/Moyou.Aspects/Moyou.Aspects.Factory/FactoryAttribute.cs @@ -66,16 +66,18 @@ private static void HandleNonDefaultConstructor(IAspectBuilder build string trimmedInterfaceName, INamedType primaryInterface) { IConstructor? constructor; - if (memberType.Constructors.Count == 1) + if (memberType.Constructors.Count(constructor => constructor.Accessibility == Accessibility.Public) == 1) { - constructor = memberType.Constructors.Single(); + constructor = + memberType.Constructors.Single(constructor => constructor.Accessibility == Accessibility.Public); } else { try { constructor = - memberType.Constructors.SingleOrDefault(ctor => ctor.HasAttribute()); + memberType.Constructors.SingleOrDefault(ctor => + ctor.HasAttribute() && ctor.Accessibility == Accessibility.Public); } catch (InvalidOperationException iox) {