Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在.NET程序集中内部化类和方法_C#_.net_Vb.net_Assemblies - Fatal编程技术网

C# 在.NET程序集中内部化类和方法

C# 在.NET程序集中内部化类和方法,c#,.net,vb.net,assemblies,C#,.net,Vb.net,Assemblies,我有一组多个程序集,其中一个程序集用作API,它依赖于其他程序集。我希望将所有程序集合并为一个程序集,但防止从外部看到除API程序集以外的所有程序集 然后,我将使用Xenocode混淆此程序集。从我所看到的,用Xenocode将程序集内部化是不可能的 我看过微软的ILMerge,但不知道它是否能满足我的需求。 我知道Xenocode可以将程序集合并为一个程序集,但我不确定它是否会将其他非主程序集内部化 我在ILMerge中找到了/internalize开关,该开关内部化除主程序集以外的所有程序集

我有一组多个程序集,其中一个程序集用作API,它依赖于其他程序集。我希望将所有程序集合并为一个程序集,但防止从外部看到除API程序集以外的所有程序集

然后,我将使用Xenocode混淆此程序集。从我所看到的,用Xenocode将程序集内部化是不可能的

我看过微软的ILMerge,但不知道它是否能满足我的需求。

我知道Xenocode可以将程序集合并为一个程序集,但我不确定它是否会将其他非主程序集内部化


我在ILMerge中找到了/internalize开关,该开关内部化除主程序集以外的所有程序集。非常有用

我知道Xenocode可以将程序集合并为一个程序集,但我不确定它是否会内部化其他非主程序集


我在ILMerge中找到了/internalize开关,该开关内部化除主程序集以外的所有程序集。非常有用

我使用microsoft的ILMerge将DLL内部化为单个汇编库。有一个名为NuGenUnify的用于使用ILMerge的有用GUI。您可以找到它。

我使用microsoft的ILMerge将DLL内部化为单个汇编库。有一个名为NuGenUnify的用于使用ILMerge的有用GUI。您可以找到它。

我建议您查看上的InternalsVisibleTo属性

您可以将除API程序集中之外的所有程序集中的所有内容标记为“内部”而不是“公共”,然后仅将它们重新显示到您的API程序集中

完成此操作后,使用ILMerge应该会提供一个只显示API类的程序集。

我建议您查看上的InternalsVisibleTo属性

您可以将除API程序集中之外的所有程序集中的所有内容标记为“内部”而不是“公共”,然后仅将它们重新显示到您的API程序集中

完成这一点后,使用ILMerge应该会为您提供一个只显示API类的程序集。

有一些,但我认为如果您添加优化+合并+模糊处理,您可能会创建一个非常复杂的情况,但没有什么好处

为什么不只有一个程序集,并且只公开您的API

如果您总是将它们作为单个程序集分发,那么就没有理由不这样编译它们。您将从编译器优化中获得更多好处,而且编译也会更快。

有一些,但我认为如果您添加优化+合并+模糊处理,您可能会创建一个非常复杂的情况,但没有什么好处

为什么不只有一个程序集,并且只公开您的API

如果您总是将它们作为单个程序集分发,那么就没有理由不这样编译它们。您将从编译器优化中获得更多好处,而且编译也会更快