tôi đang cố gắng để lộ một số internals cho dự án thử nghiệm đơn vị của tôi bằng cách sử dụng:Làm cách nào để tôi có thể làm cho thuộc tính InternalsVisibleTo hoạt động bằng cách ký một mã thông báo công khai một cách an toàn?
[assembly: InternalsVisibleTo("MyTest")]
Nhưng tôi nhận được lỗi:
Error 1 Friend assembly reference MyTest' is invalid. Strong-name signed assemblies must specify a public key in their InternalsVisibleTo declarations. .../MyClass.cs...
Khi tôi gán một PublicTokenKey bằng tay:
[assembly: InternalsVisibleTo("MyTest, PublicKeyToken=XxxxxYysakf")]
Giải pháp xây dựng mà không có bất kỳ lỗi nào.
- Tại sao tôi cần bao gồm mã thông báo khóa công khai?
- Tôi không chắc chắn liệu mình có vi phạm điều gì đó trong sản xuất hay không bằng cách đưa mã thông báo khóa công khai.
Vì vậy, cách tốt nhất và an toàn nhất để gán khóa công khai cho dự án Thử nghiệm của tôi là gì?
Bạn không cần phải gán mã thông báo khóa công khai. Nhưng bạn cần phải chắc chắn rằng các tên lắp ráp phù hợp. – UrbanEsc
Tôi đang sao chép dán tên lắp ráp từ trường Tên lắp ráp được hiển thị trong thuộc tính Dự án. Vì vậy, nó phải là chính xác, tôi gues .. – pencilCake
Alright, vì vậy tôi havent gặp phải vấn đề bản thân mình, nhưng anh chàng này ở đây có thể có một tùy chọn cho bạn http://blog.tylerholmes.com/2008/04/unit-tests-and -internalsvisibleto.html – UrbanEsc