"无效的Resx文件,无法加载类型(类型)"继续回来

时间:2016-02-28 15:07:56

标签: c# visual-studio dll visual-studio-2015

在我的visual studio(2015)项目中,我遇到了一些障碍:Resx文件不断引用不存在的东西。之前问过这个问题here,解决方案有效(大多数情况下),但是每当我改变受影响的形式的设计师时,问题就会不断回归(添加,移除,移动,改变财产,等)。

在我的情况下,有问题的类型是Vector2,一个简单的向量结构我几个月前变成了我的其他项目的dll。一切都很好,引用dll并以这种方式使用它,但我发现我需要对它进行更改,所以我决定删除对dll的引用,只需将Vector2 dll代码复制到我的项目并以这种方式改变。

嗯,我不太确定Visual Studio知道发生了什么,因为它似乎仍然想要引用一些不存在的东西(上面链接的无效Resx问题)。

但是,在我的情况下,问题出现在两个地方,即我的一个表单的自动生成的Resx文件:

<data name="VelocityPicker.Value" mimetype="application/x-microsoft.net.object.binary.base64">
<value>
    AAEAAAD/////AQAAAAAAAAAMAgAAAD5QaHlzU2ltLCBWZXJzaW9uPTEuMC4wLjAsIEN1bHR1cmU9bmV1
    dHJhbCwgUHVibGljS2V5VG9rZW49bnVsbAUBAAAAD1BoeXNTaW0uVmVjdG9yMgIAAAABWAFZAAAGBgIA
    AAAAAAAAAAAAAAAAAAAAAAAACw==
</value>
</data>

并以表格形式自动生成初始化* .Designer.cs:

// 
// VelocityPicker
// 
this.VelocityPicker.Location = new System.Drawing.Point(243, 197);
this.VelocityPicker.Name = "VelocityPicker";
this.VelocityPicker.ReadOnly = false;
this.VelocityPicker.Size = new System.Drawing.Size(225, 140);
this.VelocityPicker.TabIndex = 35;
this.VelocityPicker.Value = ((PhysSim.Vector2)(resources.GetObject("VelocityPicker.Value")));

而且我不太确定为什么它特别容易遇到VelocityPicker(尽管它在另一个名为ForcesReadout的表格中与另一个VelocityPicker实例存在完全相同的问题),因为Vector2在我的项目的其他地方被广泛使用。

1 个答案:

答案 0 :(得分:0)

在摆弄项目文件后,我发现将原始dll的引用添加回来,将受影响的结构迁移到不同的文件,删除引用,删除并重新生成受影响的Resx文件(通过移动控件那个形式的设计师)终于解决了这个问题。非常迂回,但它确实有效。

我还对Vector2结构做了一些更改,我假设它在解决方案中起了作用(可能是版本冲突)。