2013-08-31 15 views
10

Tôi chỉ cần cài đặt AutoMapper, qua NuGet, trên một dự án mới, nhưng khi tôi chạy mã, tôi nhận được lỗi sau:Tại sao AutoMapper v3 không hoạt động vì nó đang tìm v2.2.1.0?

Could not load file or assembly 'AutoMapper, Version=2.2.1.0, Culture=neutral, PublicKeyToken=be96cd2c38ef1005' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

Tại sao nó tìm kiếm Version = 2.2.1.0, và những gì tôi có thể làm về chuyện đó? Hoàn nguyên về phiên bản đó?

Trả lời

10

Có thể bạn chỉ muốn thêm một ràng buộc chuyển hướng cho AutoMapper là một trong những tài liệu tham khảo của bạn đang tìm kiếm phiên bản 2.2 đặc biệt

này nên làm điều đó:

<dependentAssembly> 
     <assemblyIdentity name="AutoMapper" publicKeyToken="be96cd2c38ef1005" 
        culture="neutral"/> 
     <bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0"/> 
    </dependentAssembly> 
+0

trên thực tế, tôi vừa cập nhật lên 3.0 và gặp sự cố bạn đã khắc phục bằng cách thêm chuyển hướng ràng buộc này. nếu bạn có .net phản xạ bạn có thể có thể nhìn thấy những gì đã tham khảo này, nhưng nó có lẽ là khá học tập thực sự. – dove

4

Thử gỡ cài đặt và cài đặt lại AutoMapper lần nữa.

Nếu bạn có nhiều dự án trong khả năng giải pháp của mình là bạn đã cài đặt phiên bản 2.2.1.0 trong một trong các dự án của mình. Nhưng phiên bản mới nhất của AutoMapper là 3.0.0 vì vậy đây là lý do tại sao bạn gặp vấn đề.

+0

Điều này hoàn toàn có thể. Tôi sẽ kiểm tra lại rằng ngay sau khi tôi nhận được để làm việc trên mã một lần nữa tối nay. – ProfK

0

tôi đã có lỗi tương tự và đã có thể để sửa chữa bằng cách thiết lập Enable các ứng dụng 32-bit True trên App Pool

1

vấn đề:

Could not load file or assembly 'AutoMapper, Version=3.2.1.0, Culture=neutral, PublicKeyToken=be96cd2c38ef1005' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

Giải pháp:

Add assemblyBinding để yur app.config file:

<configuration> 
    <runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
     <assemblyIdentity name="AutoMapper" publicKeyToken="be96cd2c38ef1005" culture="neutral" /> 
     <bindingRedirect oldVersion="0.0.0.0-3.2.1.0" newVersion="3.3.0.0" /> 
     </dependentAssembly> 
    </assemblyBinding> 
    </runtime> 
</configuration> 

sạch, xây dựng lại giải pháp và nụ cười! :-)

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