c# - MEF. Enforce PartCreationPolicy to be CreationPolicy.Shared in custom ExportAttribute -
i have following custom attribute inherits mef's exportattribute:
[attributeusage(attributetargets.class)] public class definesettingsattribute : exportattribute { public definesettingsattribute() : base(typeof(definesettingsattribute)) { } }
i enforce shared creation policy in classes decorated attribute. can achieve with:
[definesettings] [partcreationpolicy(creationpolicy.shared)] public class foo { }
this way import explicit non-shared fail. nevertheless need no make custom attribute, final code looks this:
[definesettings] public class foo { }
the way have made work discovering decorated types , add them partcreationpolicy attribute using reflection. wonder if there more elegant , better way.
Comments
Post a Comment