内部
internal 关键字使同一程序集中的每个使用者都可以使用类(包括嵌套类),属性,方法或字段:
internal class Foo
{
internal string SomeProperty {get; set;}
}
internal class Bar
{
var myInstance = new Foo();
internal string SomeField = foo.SomeProperty;
internal class Baz
{
private string blah;
public int N { get; set; }
}
}
这可以被打破以允许测试程序集通过向 AssemblyInfo.cs 文件添加代码来访问代码:
using System.Runtime.CompilerServices;
[assembly:InternalsVisibleTo("MyTests")]