在编译我的 Visual Studio 项目时,我想将我的所有公共变量变量/方法/类设为内部。源代码不会更改,但编译库完成后,它应该只有内部访问权限。这可能吗?
我在所有项目的程序集信息文件中设置了“InternalsVisibleTo("ClassLibrary")”,但是,我不想将“public”上的全部替换为“internal”。有谁知道这附近是否有远方?所以当我编译,构建我的项目时,发布项目只允许内部访问。
谢谢你,祝你有美好的一天,
乔
在编译我的 Visual Studio 项目时,我想将我的所有公共变量变量/方法/类设为内部。源代码不会更改,但编译库完成后,它应该只有内部访问权限。这可能吗?
我在所有项目的程序集信息文件中设置了“InternalsVisibleTo("ClassLibrary")”,但是,我不想将“public”上的全部替换为“internal”。有谁知道这附近是否有远方?所以当我编译,构建我的项目时,发布项目只允许内部访问。
谢谢你,祝你有美好的一天,
乔
我想你误解了InternalsVisibleTo
属性的使用。它用于允许另一个程序集中的代码访问声明为internal
.
假设您有 AssemblyA,其中您有internal class SomeClass
. 然后你有AssemblyB。AssemblyB 中的代码不能使用SomeClass
,因为它internal
在 AssemblyA 中。然后,您可以在 AssemblyA 中使用InternalsVisibleTo
授予 AssemblyB 使用 AssemblyA 的internal
类型和成员的访问权限。
如果您只是想让代码在 AssemblyA 内部,则需要从一开始就相应地声明类型;没有捷径可走。