2017-09-03 22 views
0

我升級到VS2017 15.3.3,但仍在使用code first方法處理ASP.NET MVC Core 1.1.1項目。以下來自官方ASP.NET團隊this tutorial時(也就是更適合於ASP.NET核2.0),當我跑我正在兼容性錯誤(v2.0 vs v1.1)以下Package Manager命令(從教程):無法在asp.net核心1.1.1上加載文件或程序集「Microsoft.EntityFrameworkCore.SqlServer,Version = 1.1.2.0錯誤

Install-Package Microsoft.EntityFrameworkCore.SqlServer 

所以,我決定-version 1.1.1作爲參數添加到上面的命令如下所示,運行成功:

Install-Package Microsoft.EntityFrameworkCore.SqlServer -version 1.1.1 

我做了其他兩個相關PM命令一樣在上面提到的教程,一切都運行得很好。但是現在,當我運行下面的命令PM我收到以下錯誤:

PM> add-migration MyFirstMigration -context BloggingContext 

錯誤

Could not load file or assembly 'Microsoft.EntityFrameworkCore.SqlServer, Version=1.1.2.0

的.csproj文件

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

    <PropertyGroup> 
    <TargetFramework>netcoreapp1.1</TargetFramework> 
    <PackageTargetFallback>$(PackageTargetFallback);portable-net45+win8+wp8+wpa81;</PackageTargetFallback> 
    <UserSecretsId>aspnet-MVC_IndvUserAccts_Test-B2520DA6-BE8D-42EE-806D-366F7C4C2E77</UserSecretsId> 
    </PropertyGroup> 


    <ItemGroup> 
    <PackageReference Include="Microsoft.ApplicationInsights.AspNetCore" Version="2.0.0" /> 
    <PackageReference Include="Microsoft.AspNetCore" Version="1.1.2" /> 
    <PackageReference Include="Microsoft.AspNetCore.Authentication.Cookies" Version="1.1.2" /> 
    <PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" Version="1.1.2" /> 
    <PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="1.1.2" /> 
    <PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.3" /> 
    <PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.1.2" /> 
    <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="1.1.2" PrivateAssets="All" /> 
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="1.1.1" /> 
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer.Design" Version="1.1.2" PrivateAssets="All" /> 
    <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="1.1.1" PrivateAssets="All" /> 
    <PackageReference Include="Microsoft.Extensions.Configuration.UserSecrets" Version="1.1.2" /> 
    <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.1.2" /> 
    <PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="1.1.1" PrivateAssets="All" /> 
    <PackageReference Include="Microsoft.VisualStudio.Web.BrowserLink" Version="1.1.2" /> 
    </ItemGroup> 

    <ItemGroup> 
    <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="1.0.1" /> 
    <DotNetCliToolReference Include="Microsoft.Extensions.SecretManager.Tools" Version="1.0.1" /> 
    <DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="1.0.1" /> 
    </ItemGroup> 

</Project> 
+0

你可以在你的csproj中發佈所有的程序集引用嗎? – mvermef

+0

@mvermef當然。根據您的要求,我只是添加了'.csproj'文件內容。 – nam

+0

運行'add-migration somemigrationname -Context BloggingContext'得到那個錯誤?您指出的添加遷移實際上會出錯。 install-package Microsoft.EntityFrameworkCore.SqlServer -Version 1.1.2應該是正確的。 BloggingContext是唯一一個嗎? – mvermef

回答

0
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="1.1.2" /> 
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer.Design" Version="1.1.2" /> 
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="1.1.1" PrivateAssets="All" /> 

DotNeCliReference

<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="1.0.1" /> 
<DotNetCliToolReference Include="Microsoft.Extensions.SecretManager.Tools" Version="1.0.1" /> 
<DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="1.0.1" /> 
+0

我看到您顯示的兩個項目不僅顯示版本號不同,而且其他屬性名稱也不同。那麼究竟你建議我需要做什麼? – nam

+0

我的建議是給我一個旋轉,因爲這些工作目前在我的解決方案。 – mvermef

+0

您的建議工作(謝謝)。我在下面將版本'1.1.1'更改爲'1.1.2',它工作於'。爲了其他讀者的利益,您可能需要澄清一下您的「回覆」,我會將其標記爲答案。在你發表評論之前,我自己並不清楚你建議我做什麼。 – nam

相關問題