dll项目中的类名更改不会更新?

时间:2017-09-25 08:54:11

标签: c# dll visual-studio-2017

在dll解决方案中,我将主公共类(namebase)更改为更好的名称
EasyXML.Settings类现在已经成为EasyXML.XMLconfig。

namespace EasyXML
 {
    public class XMLconfig  // i changed this name and its constructor.
     {

编译时我先做了一个干净的解决方案然后我为这个.dll编译了调试版和发行版

另一个项目已经使用了旧版本,但需要更新到新版本。因此,我删除了对旧dll的引用,删除了旧的dll,添加了新版本的dll,并再次创建了对它的引用。

但是不知何故,其他项目无法识别更新的类名XMLconfig。 (不是在干净的构建上),它的行为就像它是否被缓存一样。

我不确定,我是否需要对dll解决方案或其他项目执行其他操作?来刷新这些名称。

1 个答案:

答案 0 :(得分:1)

必须有一个简单的解释:

  1. 确保第二个项目中没有任何错误(否则VS很可能无法更新dll中的类名)

  2. 确保通过将dll的引用添加到您引用正确文件的第二个项目(使用解决方案选项卡而不是浏览)

  3. 确保您的dll项目实际已编译。 (有几种情况下项目没有编译但解决方案构建成功)。检查dll项目输出的修改日期,确保它不是旧版本。

  4. 您可以转到project->properties->build->output pathproject->properties->build events并确保当前构建配置的输出指向正确的位置

  5. 确保两个项目都使用完全相同版本的.net框架

  6. 除此之外:

    1. 确保类名(XMLConfig)与命名空间(EasyXML)不完全匹配,否则VS用户无法访问该类

    2. 确保dll项目中没有任何具有相同名称的部分类。

    3. 确保其他任何其他类没有相同的命名空间和类名