2017-02-28 194 views
3

我在mac上使用最新的.Net Core SDK的visual studio mac。在Windows上的視覺工作室2017 RC一切都很好,但是當我嘗試恢復與Visual Studio Mac的Mac上的nuget包它會引發我的錯誤。Nuget包恢復失敗Microsoft.Composition 1.0.27

程序包Microsoft.Composition 1.0.27與netcoreapp1.1(.NETCoreApp,Version = v1.1)不兼容。軟件包Microsoft.Composition 1.0.27支持:portable-net45 + win8 + wp8 + wpa81(.NETPortable,Version = v0.0,Profile = Profile259) 一個或多個軟件包與.NETCoreApp版本= v1.1不兼容。

這裏是我的* .csproj的文件

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

    <PropertyGroup> 
     <Description>Some</Description> 
     <Copyright>Some</Copyright> 
     <AssemblyTitle>Some</AssemblyTitle> 
     <TargetFramework>netcoreapp1.1</TargetFramework> 
     <PreserveCompilationContext>true</PreserveCompilationContext> 
     <AssemblyName>SharpCommerce</AssemblyName> 
     <OutputType>Exe</OutputType> 
     <PackageId>Some</PackageId> 
     <UserSecretsId>aspnet-SharpCommerce-ecd1a4f7-1de0-468a-8065-ab902c7aae9b</UserSecretsId> 
     <RuntimeFrameworkVersion>1.1.0</RuntimeFrameworkVersion> 
     <PackageTargetFallback>$(PackageTargetFallback);dotnet5.6;portable-net45+win8;portable-net45+win8+wp8+wpa81;</PackageTargetFallback> 
     <GenerateAssemblyFileVersionAttribute>false</GenerateAssemblyFileVersionAttribute> 
     <GenerateAssemblyVersionAttribute>false</GenerateAssemblyVersionAttribute> 
     <GenerateAssemblyInformationalVersionAttribute>false</GenerateAssemblyInformationalVersionAttribute> 
     <GenerateAssemblyConfigurationAttribute>false</GenerateAssemblyConfigurationAttribute> 
     <GenerateAssemblyCompanyAttribute>false</GenerateAssemblyCompanyAttribute> 
     <GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute> 
     <PreBuildEvent></PreBuildEvent> 
    </PropertyGroup> 

    <ItemGroup> 
     <Content Update="wwwroot\**\*;**\*.cshtml;appsettings.json;web.config"> 
     <CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory> 
     </Content> 
    </ItemGroup> 

<ItemGroup> 
<PackageReference Include="Microsoft.AspNetCore.Authentication.Cookies" Version="1.1.0" /> 
<PackageReference Include="Microsoft.AspNetCore.Diagnostics" Version="1.1.0" /> 
<PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" Version="1.1.0" /> 
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="1.1.0" /> 
<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.1" /> 
<PackageReference Include="Microsoft.AspNetCore.Routing" Version="1.1.0" /> 
<PackageReference Include="Microsoft.AspNetCore.Server.IISIntegration" Version="1.1.0" /> 
<PackageReference Include="Microsoft.AspNetCore.Server.Kestrel" Version="1.1.0" /> 
<PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.1.0" /> 
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="1.1.0" /> 
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer.Design" Version="1.1.0"> 
    <PrivateAssets>All</PrivateAssets> 
</PackageReference> 
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="1.0.0-msbuild3-final"> 
    <PrivateAssets>All</PrivateAssets> 
</PackageReference> 
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="1.1.0" /> 
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="1.1.0" /> 
<PackageReference Include="Microsoft.Extensions.Configuration.UserSecrets" Version="1.1.0" /> 
<PackageReference Include="Microsoft.Extensions.Logging" Version="1.1.0" /> 
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.0" /> 
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.1.0" /> 
<PackageReference Include="Microsoft.Extensions.Options.ConfigurationExtensions" Version="1.1.0" /> 
<PackageReference Include="Microsoft.VisualStudio.Web.BrowserLink.Loader" Version="14.1.0" /> 
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration" Version="1.1.0-preview4-final" /> 
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="1.1.0-msbuild3-final"> 
    <PrivateAssets>All</PrivateAssets> 
</PackageReference> 
<PackageReference Include="Microsoft.AspNetCore.Mvc.Razor" Version="1.1.1" /> 
    <PackageReference Include="System.IO.FileSystem" Version="4.3.0" /> 
    <PackageReference Include="Microsoft.Extensions.FileProviders.Physical" Version="1.1.0" /> 
    <PackageReference Include="Microsoft.AspNetCore.Http.Abstractions" Version="1.1.0" /> 
    <PackageReference Include="System.Reflection" Version="4.3.0" /> 
    <PackageReference Include="System.Runtime.Loader" Version="4.3.0" /> 
    <PackageReference Include="Microsoft.CodeAnalysis.Common" Version="1.3.2" /> 
</ItemGroup> 

<Target Name="PrepublishScript" BeforeTargets="PrepareForPublish"> 
    <Exec Command="bower install" /> 
    <Exec Command="dotnet bundle" /> 
</Target> 


<ItemGroup> 
    <ProjectReference Include="..\..\Some.Core.Contracts\Some.Core.Contracts.csproj" /> 
    <ProjectReference Include="..\..\Some.Core\Some.Core.csproj" /> 
</ItemGroup> 

</Project> 
+0

嘗試https://developercommunity.visualstudio.com/content/problem/10914/scaffolding-net-core-with-entity-framework.html。 –

回答

0

答:

感謝您報告這一點。預覽版4中的Visual Studio for Mac忽略了PackageTargetFallback信息。因此,project.assets.json文件沒有任何導入,當應該允許NuGet包安裝時,它將阻止NuGet包安裝。這個錯誤應該在下一個版本中修復。

0

Package Microsoft.Composition 1.0.27僅支持.NET框架4.5,Windows 8中的Windows Phone 8.1的Windows Phone 8的Silverlight,便攜式類庫(PCL簡介259),所以它不與.net核心Mac上

有關包

的NuGet信息 https://www.nuget.org/packages/Microsoft.Composition/1.0.27

+0

是的你是對的,他們寫道它並沒有更新所有包。 但其中一個決定是升級「Microsoft.VisualStudio.Web.CodeGeneration」數據包並添加「導入」屬性到框架版本。但如何在csproj文件中做到這一點,我不知道。 – user3803356

4

如果這個包是一個真正的PCL(不兼容t使用誘餌&開關),您應該能夠使用目標回退引用它。嘗試添加

 
    <PropertyGroup> 
     <PackageTargetFallback>dnxcore50;portable-net45+win8+wp8+wpa81</PackageTargetFallback> 
    </PropertyGroup> 

到您的項目。不能保證它在運行時不會崩潰。從支持

+0

不,它不起作用 – user3803356