所以,我有两个项目......一个是大型类库,另一个是大型模拟器项目。
最初在测试期间,程序集没有强名称,但是现在我需要COM可见性,我需要对它们进行强名称(我需要这么快,并且更容易使它们COM可见而不是处理CLI)
我生成了一个.snk并将其添加到每个项目的属性中,类库编译得很好并输出.dll就好了。我在模拟器项目中添加了这个.dll作为参考,但现在模拟器项目给了我以下错误:
“DynamicsControl”类型在未包含的程序集中定义 引用。您必须添加对程序集“DynamicsControl”的引用, Version = 0.4.3.0,Culture = neutral,PublicKeyToken = null“
类型DynamicsControl确实存在于类库中(我已验证过),但它声称我没有加载正确的程序集。我相信导致问题的是PublicKeyToken = null(因为我的程序集会有一个公钥)。
当我执行sn -Tp DynamicsControl.dll(我引用的位置中的那个)时,它会输出私钥和公钥,所以我知道它有正确的签名。
我错过了什么步骤?我是否必须将程序集添加到GAC?我是否需要手动添加公钥?