为什么Nuget在不更改* .csproj文件的情况下添加引用?

时间:2012-10-12 14:36:49

标签: nuget nuget-package

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

任何人都知道Nuget如何管理参考文献?

2 个答案:

答案 0 :(得分:2)

只需仔细检查。引用正在维护* .config文件中。 请看下面的图片。

Reference Image

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>

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

答案 1 :(得分:2)

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

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