2

我正在使用 Nuget 添加一些库。我发现在添加新库后 *.csproj 并没有改变,但引用实际上改变了。

任何人都知道 Nuget 如何管理引用?

4

2 回答 2

2

只是仔细检查了一下。引用在 *.config 文件中维护。看看下面的图片。

参考图像

packages.config文件中,您将看到如下内容:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="EntityFramework" version="5.0.0" targetFramework="net40-Client" />
</packages>

App.config文件中,您将看到如下内容:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=4.4.0.0, Culture=neutral, PublicKeyToken=some-token" requirePermission="false" />
  </configSections>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
  </entityFramework>
</configuration>

注意:此示例中的值只是一个示例值。您的解决方案可能会有所不同。

于 2012-10-12T14:50:33.793 回答
2

虽然 NuGet 包引用确实存储在 packages.config 中,但 NuGet 确实会更新项目文件以添加程序集引用。项目文件和程序集引用始终在项目文件中进行管理。

在您的情况下,您可能已经引用了与 NuGet 包相同的程序集(因此它不会被修改),或者您可能在保存之前检查了磁盘上的版本。

于 2012-10-12T15:50:11.510 回答