我遇到了一个与通用 Windows 平台相关的问题,让我感到非常困扰。
假设我的解决方案中有两个项目——第一个是通用 Windows 应用程序(TestApp),第二个是通用 Windows 类库(TestClassLibrary)。 TestApp 引用了 TestClassLibrary。TestClassLibrary 引用了 Newtonsoft.Json NuGet 包(也可以是其他任何包)。 现在是奇怪的部分。 TestClassLibrary 中的任何引用都变成了对 TestApp 的公共引用。我可以在 TestApp 类中使用任何 NewtonsoftJson 特定的命名空间,尽管 TestApp.csproj 和 project.json 都没有任何与 Newtonsoft.Json 相关的引用。这违反了 TestClassLibrary 的封装性,使其实现细节(即引用的库)变为公共的,而我不希望如此。
问题是 - 这是 UWP 类库的一个特性,我在哪里可以阅读相关信息?还是这是 NuGet 的错误?
假设我的解决方案中有两个项目——第一个是通用 Windows 应用程序(TestApp),第二个是通用 Windows 类库(TestClassLibrary)。 TestApp 引用了 TestClassLibrary。TestClassLibrary 引用了 Newtonsoft.Json NuGet 包(也可以是其他任何包)。 现在是奇怪的部分。 TestClassLibrary 中的任何引用都变成了对 TestApp 的公共引用。我可以在 TestApp 类中使用任何 NewtonsoftJson 特定的命名空间,尽管 TestApp.csproj 和 project.json 都没有任何与 Newtonsoft.Json 相关的引用。这违反了 TestClassLibrary 的封装性,使其实现细节(即引用的库)变为公共的,而我不希望如此。
问题是 - 这是 UWP 类库的一个特性,我在哪里可以阅读相关信息?还是这是 NuGet 的错误?