Closed walterlv closed 4 years ago
SY 很诡异,建议作为 SourceYard 全部
可以解决 #48
实现了 #49 的方法二
一个建议,可以使用以下方式授权命名空间:
<PropertyGroup>
<RootNamespace>Walterlv.Utils</RootNamespace>
<SourceYardAuthorizedNamespaces>dotnetCampus.Utils;lindexi.Utils</SourceYardAuthorizedNamespaces>
</PropertyGroup>
一个建议,可以使用以下方式授权命名空间:
<PropertyGroup> <RootNamespace>Walterlv.Utils</RootNamespace> <SourceYardAuthorizedNamespaces>dotnetCampus.Utils;lindexi.Utils</SourceYardAuthorizedNamespaces> </PropertyGroup>
此方法的缺陷就是,如果某个开源组织发布的源代码包需要授权给非开源项目使用,那么就暴露了非开源项目的命名空间了,这变相暴露了非开源项目的所在组织。
SYInternalAllClasses
可以将所有的类型变成internal
,避免被引用时导致的类型冲突;False
True
SYLocalRootNamespace
可以修改源代码包中携带源代码的命名空间,避免被引用时导致的类型冲突;Walterlv.Demo.Utils
(注意,被保护的命名空间无法被设置更改)SYLocalRootNamespace
属性,如WalterlvDemoLocalRootNamespace
,其优先级高于全局属性。SYPreventRedirectNamespace
属性为True
来阻止以上属性生效。