ฉันมี 2 โครงการในโซลูชันของฉัน:
- แอสเซมบลี (ห้องสมุดพื้นฐาน)
- ชุดทดสอบ (NUnit)
ฉันได้ประกาศชุดทดสอบเป็นชุดเพื่อนในโครงการแรก:
[assembly: InternalsVisibleTo ("Company.Product.Tests")]
ทุกอย่างทำงานได้ดีจนกระทั่งฉันรู้ว่าฉันลืมตั้งค่าโซลูชันเพื่อลงนามในชุดประกอบของฉัน ดังนั้นจึงสร้างไฟล์ snk และตั้งค่าโปรเจ็กต์ visual studio เพื่อลงนามในแอสเซมบลีแรก (Basic Library) ตอนนี้เมื่อฉันรวบรวมโปรเจ็กต์แรกฉันได้รับข้อผิดพลาดต่อไปนี้:
ข้อมูลอ้างอิงการประกอบเพื่อน 'Company.Product.Tests' ไม่ถูกต้อง แอสเซมบลีที่เซ็นชื่อรัดกุมต้องระบุคีย์สาธารณะในการประกาศ InternalsVisibleTo
ฉันพยายามแยกคีย์สาธารณะจากไฟล์ snk ของฉันโดยใช้ยูทิลิตี้ sn แต่มันสร้างไฟล์ไบนารีแบบมีสายซึ่งฉันไม่แน่ใจว่าจะใช้อย่างไร ฉันจะแก้ไขปัญหาได้อย่างไร?