关于解决 C# CSC: Assembly generation failed -- Referenced assembly ... does not have a strong name

来源:互联网 发布:淘宝餐饮制售合法吗 编辑:程序博客网 时间:2024/05/20 16:01

问题描述:

当在checkin 已有的dll时, 如果dll没有签名(Sign)TFS可能会提示如题的错误。

 

解决方案(在可以自己build dll的情况下):

1) 打开dll对应project的property, 点 Signing, 勾选 Sign the assembly, 在 Choose a strong name key file: 下点new(如果没有的话)

2) 针对要创建的key file 可以选择加密或不加密(可勾选Protect my key file with a password), 如图

 

3) 针对所建的 snk(未加密的key file), 可以点选其属性, 并设置其 Build Action 为 Embedded Resource, 如此其他人就可以在不需要snk file的情况下使用你的dll

(提示,在步骤3的操作痕迹也可以在.csproj 中找到。)

, 如图