我在VS2013中有一个项目,我使用Telerik的报告。 在解决方案中,我有一个报告和几个类。如果我复制第一个报告重命名它,Visual Studio报告错误:
Two output file names resolved to the same output path: "obj\Debug\...
如果我删除复制的报告并尝试通过向导向项目添加新报告,VS报告我同样的错误。
您是否有经验丰富的人和您不了解解决方案的人?
谢谢
答案 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
文件)