Tôi có 2 dự án trong giải pháp của tôi:Làm thế nào để khai báo một hội bạn bè?
- hội (Thư viện cơ bản)
- thử nghiệm hội (NUnit)
tôi đã tuyên bố lắp ráp thử nghiệm như bạn bè lắp ráp trong dự án đầu tiên:
[assembly: InternalsVisibleTo ("Company.Product.Tests")]
Mọi thứ đều hoạt động tốt cho đến khi tôi nhận ra rằng tôi đã quên thiết lập giải pháp để ký hợp đồng của mình. Vì vậy, tạo ra một tập tin snk và thiết lập các dự án studio trực quan để ký lắp ráp đầu tiên (Thư viện cơ bản). Bây giờ khi tôi biên dịch dự án đầu tiên, tôi nhận được lỗi sau:
Friend assembly reference 'Company.Product.Tests' is invalid. Strong-name signed assemblies must specify a public key in their InternalsVisibleTo declarations.
tôi đã cố gắng để trích xuất các khóa công khai từ file snk tôi sử dụng tiện ích sn nhưng nó tạo ra một tập tin nhị phân có dây mà tôi không chắc chắn làm thế nào để sử dụng. Làm cách nào để khắc phục sự cố?
Không nhiều cụm được ký với cùng một khóa kết thúc bằng cùng một khóa công khai? Điều này có cung cấp một "kết thúc" xung quanh vấn đề, có lẽ không? – Bevan
@Bevan: Vâng, khá Chỉ cần biên dịch một tập tin giả với khóa có lẽ là một cách nhanh hơn để đi - sẽ chỉnh sửa –
Nếu cả hai hội đồng đang được ký kết với các khóa khác nhau, tôi giả sử tôi cần phải xác định khóa công khai của người bạn lắp ráp (bên trong InternalsVisibleTo thuộc tính). – Hemant