两个输出文件名解析为相同的输出路径

时间:2014-02-24 07:53:37

标签: resources visual-studio-2013 telerik-reporting

我在VS2013中有一个项目,我使用Telerik的报告。 在解决方案中,我有一个报告和几个类。如果我复制第一个报告重命名它,Visual Studio报告错误:

Two output file names resolved to the same output path: "obj\Debug\...

如果我删除复制的报告并尝试通过向导向项目添加新报告,VS报告我同样的错误。

您是否有经验丰富的人和您不了解解决方案的人?

谢谢

3 个答案:

答案 0 :(得分:2)

我在使用实体框架代码首次迁移时遇到此错误,并且在迁移文件夹中为我的两次迁移设置了相同的名称。

Two output file names resolved to the same output path: "obj\Debug\***.resources

我删除了重复的migration.cs文件,错误消失了。再次使用相同名称运行add-migration将其恢复。

答案 1 :(得分:1)

我有一个userControl的三个文件,所有文件共享一个公共的局部类,这引起了我的问题;它们分别命名为ucPlate.cs,ucPlate.Map.cs和ucPlate.Graphics.cs。当我将ucPlate.Graphics userControl表面更改为DoubleBuffered时,出现编译错误,“错误21两个输出文件名解析为相同的输出路径:“ obj \ Debug \ ASMS.Controls.ucPlate.resources”恢复为DoubleBuffered = false不能解决它,也不能删除打开DoubleBuffered时创建的.resx文件(以前没有.resx文件)。

根本原因是在子局部类文件中打开DoubleBuffered会自动将InitializeComponent()添加到该文件的代码底部。此方法指示重复的ucPlate名称,从而强制为ucPlate.cs文件创建一个.resx。我曾以为它是ucPlate.Graphics.resx。

private void InitializeComponent()
{
    this.SuspendLayout();
    // 
    // ucPlate
    // 
    this.Name = "ucPlate";
    this.ResumeLayout(false);
}

答案 2 :(得分:0)

转到解决方案资源管理器(如果您重命名表单,请尝试查看错误并删除错误中的.resx文件)