更新澄清:
我有一个作为 Nuget 包公开的项目。我需要它对我的解决方案程序集公开,但对将使用我的包的人来说是私有的。有没有办法做到这一点?
原始问题:
我正在处理的一个项目目前正在使用 2 个实体项目,它是通过 .Net Standard 2.0 框架编写的:
Contract.csproj
Contract.Internal.csproj
第一个配置为使用私有 Nuget 服务器向消费者公开,而第二个用于我的解决方案项目的内部使用。
问题是两者都有几乎相同的类,除了少数仅供我的解决方案内部使用。
有没有办法将它们合并到一个项目中,并将一些类配置为在 NuGet 包中公开而其他类不公开?
我阅读了可以添加到 csproj PackageReference 的 ExcludeAssets/IncludeAssets 标记,但是我看到的文档和所有示例都引用了依赖项及其版本,而不是项目类。
此外,如果您有其他解决方案,您可以以其他方式处理您的项目(或者甚至认为我发现自己的这种情况是错误的)如果您分享您对此的想法,我会非常高兴。