更新后无法构建.NET Core项目

时间:2017-07-14 15:09:00

标签: c# .net .net-core

我似乎找不到任何有同样问题的人,它让我把头发拉了几个小时。我正在与一个团队合作开发一个.net核心项目。我意识到我的版本已经过时并升级到版本1.0.4。但是,自更新以来,我无法再无错误地构建或运行项目。

  

C:\程序   文件\ DOTNET \ SDK \ 1.0.4 \的SDK \ Microsoft.NET.Sdk \建立\ Microsoft.PackageDependancyResolution.targets(154,5):   错误:资产文件   'C:\用户\ ZL \文件\猁\猁%20project \ SRC \ Lynx.Web \ OBJ \ project.assets.json'   未找到。运行NuGet包还原以生成此文件。   [C:\用户\ ZL \文件\猁\猁%20project \ SRC \ Lynx.Web \ Lynx.Web.csproj]   obj \ Debug \ netcoreapp1.1 \ Lynx.Web.AssembleyInfo.cs(6,12):错误CS0246:   找不到类型或命名空间名称'System'(是吗?   缺少指令或程序集引用?)

     

[C:\用户\ ZL \文件\猁\猁%20project \ SRC \ Lynx.Web \ Lynx.Web.csproj]

这些文件存在并且看起来很好。我运行了dotnet restoredotnet clean。我试图擦除obj和bin文件夹并重新生成它们。我擦了我们的NuGet缓存。我尝试卸载.NET Core并重新安装它。我甚至完全吹走了我的代码并从git中删除了一个新版本。其他团队成员可以很好地构建代码,它可以在其他机器上工作,而不是我的Windows 10机器。似乎一个dotnet恢复应该修复它,以及我在研究类似问题时发现的任何地方。某种形式的东西是不合时宜但我无法弄清楚。有什么我需要更新的,我不知道吗?

**已编辑以添加csproj

<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp1.1</TargetFramework>
    <PreserveCompilationContext>true</PreserveCompilationContext>
    <AssemblyName>Lynx.Web</AssemblyName>
    <OutputType>Exe</OutputType>
    <PackageId>Lynx.Web</PackageId>
    <RuntimeFrameworkVersion>1.1.1</RuntimeFrameworkVersion>
    <PackageTargetFallback>$(PackageTargetFallback);dotnet5.6;portable-net45+win8</PackageTargetFallback>
  </PropertyGroup>

  <ItemGroup>
    <Compile Remove="node_modules\**\*" />
    <None Update="ClientApp\dist\**\*;Views\**\*;wwwroot\**\*">
      <CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
    </None>
    <None Update="wwwroot\dist\*.map">
      <CopyToPublishDirectory>Never</CopyToPublishDirectory>
    </None>
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.Diagnostics" Version="1.1.1" />
    <PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.2" />
    <PackageReference Include="Microsoft.AspNetCore.Server.IISIntegration" Version="1.1.1" />
    <PackageReference Include="Microsoft.AspNetCore.Server.Kestrel" Version="1.1.1" />
    <PackageReference Include="Microsoft.AspNetCore.SpaServices" Version="1.1.0-*" />
    <PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.1.1" />
    <PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="1.1.1" />
    <PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="1.1.1" />
    <PackageReference Include="Microsoft.Extensions.Configuration.CommandLine" Version="1.1.1" />
    <PackageReference Include="Microsoft.Extensions.Logging" Version="1.1.1" />
    <PackageReference Include="Microsoft.AspNetCore.Identity" Version="1.1.1" />
    <PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.1" />
    <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.1.1" />
    <PackageReference Include="Microsoft.Extensions.Options.ConfigurationExtensions" Version="1.1.1" />
    <PackageReference Include="Microsoft.AspNetCore.Authentication.OpenIdConnect" Version="1.0.2" />
    <PackageReference Include="IdentityServer4.AspNetIdentity" Version="1.0.0" />
    <PackageReference Include="IdentityServer4" Version="1.2.0" />
    <PackageReference Include="IdentityServer4.AccessTokenValidation" Version="1.0.5" />
    <PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="1.1.1" />
  </ItemGroup>

  <Target Name="PrepublishScript" BeforeTargets="PrepareForPublish">
    <Exec Command="npm install" />
    <Exec Command="node node_modules/webpack/bin/webpack.js --config webpack.config.vendor.js --env.prod" />
    <Exec Command="node node_modules/webpack/bin/webpack.js --env.prod" />
  </Target>

  <ItemGroup>
    <DotNetCliToolReference Include="Microsoft.DotNet.Watcher.Tools" Version="1.0.0" />
  </ItemGroup>

</Project>

提前致谢。

1 个答案:

答案 0 :(得分:12)

我终于弄清楚了。在我的机器上,项目位于lynx project文件夹中,但是,当我提取代码或更新我的版本时,文件夹名称已更改为lynx%20project。这就是为什么它无法找到任何文件。我跳了进来并更改了目录名称并修复了它。谢谢所有试图提供帮助的人。希望这将在未来的某个时间节省一些可怜的开发者。