11

Tôi đang sử dụng khung Entity 4.3.1 được cài đặt bởi nuget trong dự án thư viện lớp .Net 4.0 của tôi. Trong trường hợp, khi tôi gọi lệnh "Bật-di chuyển" trong bảng điều khiển PM, tôi nhận được ngoại lệ sau:Ngoại lệ khi tôi đang cố gắng cho phép di chuyển trong EF 4.3.1

Gọi ngoại lệ "LoadFrom" với "1" đối số (s): "Nelze načíst soubor nebo sestavení file: /// D: \ Người dùng \ DvoracekR \ Documents \ Visual Studio 2010 \ Dự án \ WebCameras \ packages \ EntityFramework.4.3.1 \ đến ols \ EntityFramework.PowerShell.Utility.dll nebo jeden z jejich závislých prvků. Systém nemůže nalé zt uvedený soubor. " Tại D: \ Users \ DvoracekR \ Documents \ Visual Studio 2010 \ Projects \ WebCameras \ packages \ EntityFramework.5. 0.0-rc \ tools \ EntityFramework.psm1: 393 char: 62 + $ utilityAssembly = [System.Reflection.Assembly] :: LoadFrom < < < < ((Tham-Path $ toolsPath Entity Framework.PowerShell.Utility.dll)) + CategoryInfo: NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId: DotNetMethodException

Bạn không thể gọi phương thức trên biểu thức có giá trị null. Tại D: \ Users \ DvoracekR \ Documents \ Visual Studio 2010 \ Projects \ WebCameras \ packages \ EntityFramework.5. 0.0-rc \ tools \ EntityFramework.psm1: 394 char: 50 + $ = $ phối utilityAssembly.CreateInstance < < < < ( + CategoryInfo: InvalidOperation: (CreateInstance: String) [], RuntimeException + FullyQualifiedErrorId: InvokeMethodOnNull

ngoại lệ gọi là "CreateInstanceFrom" với "8" lập luận (s): "Typ System.Data.Entity.Migrations.En ableMigrationsCommand ze sestavení EntityFramework.PowerShell, Version = 4.3.1.0, Culture = trung tính, P ublicKeyToken = b77a5c561934e089 "#Tại D: \ Users \ DvoracekR \ Documents \ Visual Studio 2010 \ Dự án \ WebCameras \ packag es \ EntityFramework.5. 0.0-rc \ tools \ EntityFramework.psm1: 418 char: 31> + $ domain.CreateInstanceFrom < < < < ( + CategoryInfo: NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId: DotNetMethodException

+1

Nếu bạn muốn nhận câu trả lời ở đây, hãy tránh các phiên bản .NET framework được bản địa hoá - các câu hỏi có thông tin bằng ngôn ngữ địa phương thường được đóng theo địa phương quá. Thông báo lỗi của bạn chứa một số thông tin mâu thuẫn - nó cố gắng tải phần mở rộng PowerShell EF 4.3.1 từ thư mục EF 5.0 RC. Vậy bạn đang sử dụng phiên bản nào? –

+0

Tôi đang sử dụng phiên bản 4.3.1. Tôi cũng đã thử gỡ bỏ Entity Framework bằng NuGet và cài đặt lại nó. Không có gì thay đổi. Lệnh Enable-Migrations vẫn đang cố gắng tải assembly không tồn tại. Tôi có nên thử cài đặt phiên bản tiền phát hành mới nhất không? –

+0

Bạn thấy gì trong gói.config và trong thư mục Packages? –

Trả lời

25

tôi đã giải quyết vấn đề nêu trên.

  1. tôi gỡ bỏ khung Entity sử dụng quản lý NuGet gói.
  2. tôi tự xóa các thư mục con bắt đầu với "Entity" trong gói thư mục.
  3. Tôi đã cài đặt Entity Framework 4.3.1 một lần nữa

Bây giờ cuộc di cư này được kích hoạt một cách chính xác.

+0

Gần đây tôi đã gặp phải sự cố này một trong những dự án của tôi trên EF 5 –

+1

Bạn đã @kirsten g giải quyết nó bằng cách tương tự? –

+0

Một cái gì đó như thế này làm việc, từ những gì tôi nhớ –

0

Tôi gặp sự cố này khi chia sẻ dự án với một trường đại học bằng cách gửi cho anh dự án. Khi anh ấy gửi lại cho tôi, tôi phát hiện ra dự án đã trả lại đã cho tôi lỗi này khi tôi cố gắng thêm di chuyển. Tôi đã giải quyết vấn đề bằng cách ghi đè lên thư mục \ EntityFramework.5.0.0 từ dự án được trả về với thư mục từ dự án ban đầu của tôi.

Tôi không gặp vấn đề gì nếu tôi chỉ di chuyển dự án về máy của riêng mình.

+0

Kirsten Tôi tin rằng bạn có thể sử dụng các bước được mô tả trong bài viết tại http://docs.nuget.org/docs/workflows/using-nuget-without-committing-packages. Nó có thể giúp bạn tránh chia sẻ gói nuget khác nhau trong môi trường người dùng khác nhau. –

1

Cài đặt lại gói NuGet không hoạt động đối với tôi. Điều gì đã làm việc là di chuyển dự án từ một ổ đĩa mạng sang một ổ đĩa cục bộ. Chạy so sánh cho thấy rằng, ngoài các thư mục objbin, tất cả các tệp đều giống hệt nhau.

Nếu tôi nhớ chính xác, nỗ lực cuối cùng của tôi tại Update-Database là trước khi tôi chuyển dự án sang một ổ đĩa mạng.

+0

http://entityframework.codeplex.com/workitem/856 – Stijn

2

Tôi biết đây là một câu hỏi cũ và đã có câu trả lời được chấp nhận, nhưng tôi đã gặp phải vấn đề này và nghĩ rằng tôi sẽ chia sẻ những gì tôi đã làm để giải quyết nó.


Giải pháp của tôi là kiểm soát nguồn và tôi đã làm hỏng dự án cục bộ của mình. Tôi quyết định bắt đầu lại từ Source Control, vì vậy tôi đã tạo một thư mục mới và kiểm tra mã từ SVN.

Khi tôi đã làm, tôi không còn có thể tạo di chuyển. Tôi đã gặp lỗi tương tự được liệt kê ở trên. Tôi đã thử Uninstall-Package EntityFramework, nhưng có một thông báo tương tự về việc thiếu tệp/tham chiếu trong EntityFramework.

Tôi quay lại thư mục cũ của mình và xem $Project\packages\EntityFramework.6.0.2\ và so sánh thư mục này với thư mục mới của tôi. Đã có một số tệp DLL/Xml bị thiếu vì chúng không nằm trong Kiểm soát nguồn. Họ nằm trong các thư mục \tools\, \lib\net40\lib\net45\.

Tôi vừa sao chép các tệp này vào dự án mới của mình, đã đóng/mở lại Visual Studio và đã xây dựng lại. Sau đó, mọi thứ đều ổn.

0

Sự cố này bắt đầu xảy ra với tôi khi sử dụng máy ảo khác nhau trên cùng một máy vật lý.

VMWare Fusion mặc định chia sẻ thư mục hồ sơ với OS X, do đó tạo ra nhiều vấn đề khi sử dụng nhiều máy ảo cài đặt Visual Studio, thực tế hầu như mọi ứng dụng tôi đã cài đặt bắt đầu hoạt động lạ. Nên rung chuông vào lúc đó.

Sự cố đã được giải quyết bằng cách tắt chia sẻ thư mục, điều này không rõ ràng vì tôi không có tùy chọn không chia sẻ thư mục hồ sơ, chỉ thêm/xóa các thư mục khác.

Hy vọng sự ngu dốt của tôi đã giúp một người nào khác ngoài kia :)

0

Tôi có cùng một vấn đề với các dự án từ Visual Studio 2015 đã được mở trên Visual Studio 2017. Đây là cách tôi giải quyết nó:

  1. thủ loại bỏ Entity Framework từ cụ ->NuGet Package Manager ->Manage NuGet Packages từ Solution
  2. Tìm kiếm Khung thực thể.
  3. Thật không may, có những phụ thuộc. Vì vậy, buộc phải loại bỏ chỉ Entity Framework không giải quyết được vấn đề gì cả. Vì vậy, bất kể phụ thuộc là gì, hãy xóa thủ công khỏi các bước ở trên.
  4. Cài đặt lại lần nữa Khuôn khổ thực thể và bất kỳ phụ thuộc nào mà bạn có thể đã xóa. Sau khi hoàn thành điều này, tôi đã không khởi động lại Visual Studio của tôi, khi gõ cho phép di chuyển, tất cả mọi thứ đã làm việc tốt rồi.

Để chia sẻ kinh nghiệm của tôi là tốt, tôi đã cố gắng bước này:

Uninstall-Package EntityFramework -force

Sau đó cài đặt nó cho từng dự án:

Cài đặt -Package EntityFramework

Nhưng đã không làm việc trên một phần của tôi. Vì vậy, tôi đoán tôi đã phải tự bỏ cài đặt nó bao gồm cả phụ thuộc của nó mà không cần sử dụng vũ lực và cài đặt nó một lần nữa để làm việc. Nhưng vui vì nó đã làm.

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