6

tôi sau khi hướng dẫn cho EntityFrameworkCore ở đây https://docs.efproject.net/en/staging/platforms/aspnetcore/new-db.html Nhưng khi tôi đạt được tạo cơ sở dữ liệu là một phần của hướng dẫn https://docs.efproject.net/en/staging/platforms/aspnetcore/new-db.html#create-your-database và chạy lệnh Add-Migration MyFirstMigration tôi nhận được các lỗi sau:Add-Migration hiển thị lỗi EntityFrameworkCore.Design không được cài đặt

Cannot execute this command because Microsoft.EntityFrameworkCore.Design is not installed. Install the version of that package that matches the installed version of Microsoft.EntityFrameworkCore and try again. 

tôi cố gắng để cài đặt Microsoft.EntityFrameworkCore.Design cũng như Microsoft.EntityFrameworkCore.SqlServer.Design mỗi phiên bản duy nhất có trên NuGet nhưng vẫn nhận được lỗi tương tự.

Tôi cũng đã cố gắng để chạy bên ngoài của NuGet PM sử dụng lệnh

  • DotNet khôi phục
  • di cư DotNet ef thêm MyFirstMigration

Và có những lỗi sau đây:

Unhandled Exception: System.MissingMethodException: Entry point not found in assembly 'Microsoft.EntityFrameworkCore.Design, Version=1.1.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'. 

Tôi đã thử tất cả mọi thứ tôi có thể nghĩ và nhìn khắp mọi nơi trên inte rnet nhưng vẫn xuất hiện một câu trả lời ngắn.

+0

Có thể bạn nên đăng project.json của mình - thông thường sự cố có thể được xác định ở đó. – alanh

Trả lời

5

Kiểm tra xem project.json của bạn có chứa những mục

dưới phụ thuộc:

"Microsoft.EntityFrameworkCore.Design": { 
    "version": "1.0.0-preview2-final", 
    "type": "build" 
}, 

"Microsoft.EntityFrameworkCore.SqlServer": "1.0.1", 

dưới công cụ:

"Microsoft.EntityFrameworkCore.Tools": { 
    "version": "1.0.0-preview2-final", 
    "imports": [ 
    "portable-net45+win8+dnxcore50", 
    "portable-net45+win8" 
    ] 
}, 
+2

Điều này làm việc cho tôi và tôi đã có thể sử dụng Add-Migration với succes trên ứng dụng và ứng dụng web, vấn đề là Context của tôi nằm trong thư viện và phiên bản 1.0.0-preview2 không tương thích với NETStandard. Thư viện, thần biết tại sao. Tôi đang sử dụng giải pháp thay thế ngay bây giờ và biên soạn thư viện của mình dưới dạng ứng dụng lệnh và đang hoạt động cho đến nay. Tuy nhiên tôi hy vọng rằng microsoft cập nhật thư viện và tài liệu của họ sớm, điều này là xa từ kiến ​​trúc mong muốn của tôi. – Destino

+0

@Destino Vui lòng đánh dấu là câu trả lời vì nó đã khắc phục được sự cố của bạn. – alanh

2

Thứ nhất, tài liệu này sử dụng VS2015 Update2 và phiên bản mới nhất hiện nay cho VS2015 là Cập nhật 3. Vì vậy, tôi đề nghị bạn nâng cấp VS2015 của bạn lên Update 3, đã sửa rất nhiều lỗi VS.

Sau đó, theo hướng dẫn, tôi nhận được thông báo lỗi tương tự khi tôi chạy lệnh Add-Migration MyFirstMigration. Sau đó, tôi chạy lệnh "Install-Package Microsoft.EntityFrameworkCore.Design" trong Package Manager Console để cài đặt EntityFrameworkCore.Design. Sau khi cài đặt nó, khi tôi chạy lệnh Add-Migration MyFirstMigration, nó đã thêm thành công.

Sau đây là nội dung tệp project.json của tôi. Vui lòng kiểm tra phiên bản phụ thuộc và công cụ. Hãy chắc chắn rằng họ đang ở trong các phiên bản chính xác.

"dependencies": { 
"Microsoft.NETCore.App": { 
    "version": "1.0.0", 
    "type": "platform" 
}, 
"Microsoft.AspNetCore.Diagnostics": "1.0.0", 
"Microsoft.AspNetCore.Server.IISIntegration": "1.0.0", 
"Microsoft.AspNetCore.Server.Kestrel": "1.0.0", 
"Microsoft.Extensions.Logging.Console": "1.0.0", 
"Microsoft.EntityFrameworkCore.SqlServer": "1.0.1", 
"Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview3-final", 
"Microsoft.EntityFrameworkCore.Design": "1.0.1" 
}, 

"tools": { 
"Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview2-final", 
"Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final" 
}, 
+0

Tôi đã bỏ phiếu vì nó có thể giúp một số người gặp phải vấn đề này. Giải pháp của bạn không hiệu quả với tôi vì bạn đang sử dụng thiết kế 1.0.1 và các công cụ 1.0.0-preview3-final và chúng dường như không tương thích. – Destino

+0

preview3 công cụ đã được phát hành với efcore 1.1 (hiện đang được phát hành trước) - nếu bạn đang sử dụng 1.0.1 có lẽ bạn nên sử dụng công cụ preview2 – alanh

Các vấn đề liên quan