Visual Studio Online - 命名空间xxx中不存在类型或命名空间名称yyy

时间:2015-08-06 17:14:56

标签: c# visual-studio-2015 nuget tfsbuild azure-devops

我使用.NET Framework 4.6获得了Visual Studio 2015的解决方案。在本地,我可以编译没有任何问题,我在其最新版本(3.1)中使用NuGet。

当我签到然后使用Visual Studio Online构建时,我收到如下错误:

  
      
  • Plumbing \ DALContainerRegistration.cs(1):类型或命名空间名称'实践'在命名空间中不存在' Microsoft' (你是   缺少装配参考?)
  •   
  • Storage \ BlobStorage.cs(5):类型或命名空间名称' WindowsAzure'在命名空间中不存在' Microsoft' (你是   缺少装配参考?)
  •   

我知道我在构建服务器上缺少这些引用,但我不知道如何解决这个问题。在上面的两个例子中,我从NuGet获得了企业库和Azure存储库,因此显然没有理由说它不起作用。

我在我的sln的根目录下有一个NuGet.config,这是它的内容:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
  </packageSources>
</configuration>

你知道什么是错的吗?如果您需要任何其他信息,请告诉我。

2 个答案:

答案 0 :(得分:1)

您需要启用Restore NuGet Packages。在VSO Build vNext中,您可以在Build步骤中执行此操作。 enter image description here

要创建新的构建定义: enter image description here

答案 1 :(得分:0)

我可以通过修改NuGet.config文件来解决这个问题,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageRestore>
    <add key="enabled" value="True" />
    <add key="automatic" value="True" />
  </packageRestore>
  <packageSources>
    <add key="nuget.org" value="https://www.nuget.org/api/v2/" />
    <add key="nuget.orgv3" value="https://api.nuget.org/v3/index.json" />
  </packageSources>
  <disabledPackageSources />
  <activePackageSource>
    <add key="All" value="(Aggregate source)" />
  </activePackageSource>
</configuration>