私はBaseClass
を持っていますが、これはアセンブリ内で約20以上のクラスに継承されています。この基本クラスのプロパティは、他のアセンブリ(友人アセンブリ)によって使用されます。私はinternal
というプロパティを宣言し、他のアセンブリはそれを見たり使用したりしません。dllから基底クラスを隠す
フレンドアセンブリ以外の他のアセンブリからBaseClass
自体を隠す方法はありますか?おそらく、いくつかの優れたメカニズムや設計がありますか?
BaseClass
internal
は、継承するクラスがpublic
であるため作成できません。
これは現時点ではBaseClass
のようです。
[assembly: InternalsVisibleTo("MyApp.FriendAssembly1")]
[assembly: InternalsVisibleTo("MyApp.FriendAssembly2")]
namespace MyApp.Input
{
/// <summary>
/// Note: The members of this class are visible only to certain friend assemblies. The normal consumers of this assembly can simply ignore this class.
/// </summary>
public class BaseClass
{
internal bool Property1 { get; set; }
internal bool Property2 { get; set; }
}
}
これはできません。期間。 – niksofteng