2012-12-18 42 views
5

Tôi có chương trình khách hàng được viết bằng C# trong đó một trong các dự án trong giải pháp xử lý trường hợp máy đã cài đặt SQL 2005.Cảnh báo: Không thể tìm thấy dll

Tôi đã thêm các file DLL có liên quan, nhưng tôi nhận được cảnh báo rằng:

CA0060 : The indirectly-referenced assembly 'Microsoft.SqlServer.ManagedDTS, Version=9.0.242.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' could not be found. This assembly is not required for analysis, however, analysis results could be incomplete. This assembly was referenced by: d:\Any CPU\Bin\Debug\MyProgram.SSIS2005.dll.

Theo tính chất của Microsoft.SqlServer.ManagedDTS đó là phiên bản là 9.0.3042.0, tôi không hiểu tại sao nó đòi hỏi sự phiên bản 9.0.242.0. Tôi không biết nó có liên quan hay không, nhưng phiên bản Microsoft.SQLServer.DTSRuntimeWrap là 9.0.242.0.

Tôi đã thử gì?

  • Xóa và thêm các tài liệu tham khảo
  • Thay đổi bằng tay phiên bản cần thiết trong file csproj
  • Tôi nghĩ về nhận được tất cả dlls với các phiên bản tương tự, nhưng không tìm thấy như một nguồn tin từ web.

Bất kỳ ý tưởng nào? Cảm ơn, KM

EDIT: Một chi tiết,

  • khuôn khổ mục tiêu của tôi là Net 4.0
  • tôi đã thiết lập các 'useLegacyV2RuntimeActivationPolicy' true
+3

+1 cho những gì bạn đã thử. – rekire

+0

Loại trường hợp nào? Ngoài ra, hãy kiểm tra http://connect.microsoft.com/VisualStudio/feedback/details/519539/reference-to-microsoft-sqlserver-manageddts-dll-only-works-if-target-framework-set-to-net-4-0 –

+0

Trường hợp máy chạy ứng dụng đã cài đặt SQL2005 – KernelMode

Trả lời

0

Như @Mightymuke đã đề cập trong các nhận xét, Fuslogvw.exe cho biết tệp DLL nào đã được tải. Một trong các dự án của tôi có tham chiếu đến DLL đã tham chiếu phiên bản cũ của Microsoft.SqlServer.ManagedDTS.

0

Cố gắng thêm tài liệu tham khảo từ :

C:\Windows\assembly\GAC_MSIL\Microsoft.SqlServer.ManagedDTS 

Và đặt bản sao cục bộ cho tham khảo trong VS để đúng, hy vọng điều này sẽ giúp.

0

Theo như tôi biết SQL CLR hiện không tương thích với .NET 4.0, bạn nên thử chuyển sang 3.5 và xem là giúp.

+0

Một trong những yêu cầu là khung mục tiêu 4.0 vì vậy tôi không thể thay đổi nó. – KernelMode

0

Kiểm tra cho các phiên bản của hệ thống bằng cách vào:

C:\Windows\assembly\GAC_MSIL\Microsoft.SqlServer.ManagedDTS

Nếu chúng khác nhau sau đó bấm vào Add reference và làm theo các liên kết để thêm như vậy.

Cũng trong web.config, trong thẻ hội đồng xóa thẻ có phiên bản cũ hơn.

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