Fra*_*nco 15 .net c# transitive-dependency asp.net-core
在.NET Core 1.1和Visual Studio 2017 RC中开发示例Web应用程序时,我意识到以下内容:
如你看到的:
我在ClassLibrary3项目的Class3类中编写了一个简单的方法,而Intellisense允许我使用Class1来编写类的名称,我的意思是,没有对ClassLibrary1项目进行显式引用.
我在这里错过了一些观点吗?我不希望有人只是来看看ClassLibrary2.
谢谢.
nat*_*ter 11
可传递的项目到项目引用是Visual Studio 2017和Microsoft.NET.Sdk的新功能.这是故意的行为.
请参阅https://github.com/dotnet/sdk/issues/200.
lev*_*sel 10
如果您对禁用传递引用行为感兴趣,我终于找到了一种方法.
如果您希望项目A引用B和B引用C,但不希望A引用C,则可以将PrivateAssets="All"B的ProjectReference 添加到C,如下所示:
在B.csproj
<ItemGroup>
<ProjectReference Include="..\C\C.csproj" PrivateAssets="All" />
</ItemGroup>
Run Code Online (Sandbox Code Playgroud)
此设置使C的引用为私有,因此它仅存在于B中.现在引用B的项目将不再引用C.
资料来源:https://github.com/dotnet/project-system/issues/2313
| 归档时间: |
|
| 查看次数: |
1270 次 |
| 最近记录: |