Linq to Sql说“客户”项目已经存在。选择其他名称

时间:2010-04-29 04:02:01

标签: linq-to-sql

在使用svn很长一段时间之后,我一直在使用linq to sql文件。最新的是我的dbml文件显示有错误,表明

名为“客户”的项目已存在。请选择其他名称。

然后又重复了一遍。事实上,它几乎描述了每个对象。我的修复是什么?我已经尝试重命名名为Customer的那个,但是没有解决它。我不知道该去哪里解决这个问题。我去了.dbml文件,没有看到任何重复,我去了.dbml.layout文件,并没有看到任何重复。

3 个答案:

答案 0 :(得分:1)

Visual Studio报告错误的项目对我来说是重复的。因此,即使我删除了它所说的一个副本(上面的“客户”),它只是继续报告另一个错误,直到我放弃之前才真正达到真正的欺骗之一。

此外,副本很可能位于.dbml文件的末尾(右键单击并选择“打开方式...”>“XML(文本)编辑器”)。发生这种情况是因为Visual Studio总是将任何修改移动到文件的末尾,因此当两个开发人员在修改相同项目后自动合并时,很容易结束使用欺骗。

手动运行SqlMetal以获取实际错误消息:

  • 开始> Microsoft Visual Studio> Visual Studio工具>视觉工作室 命令提示符
  • 将目录(cd)更改为包含.dbml文件的目录
    • (将文件夹从资源管理器拖放到命令提示符窗口以获取路径)
  • SqlMetal /code:[filename].designer.cs [filename].dbml

答案 1 :(得分:0)

我认为你不能拥有与其所属类同名的成员名称,如:

public class Customer
{
   public string Customer { get; set; }
   ...
}

检查您的实体。

答案 2 :(得分:0)

想出来。不知何故有重复的关联。困惑我的部分是它看起来像是指向一个物体而且看起来并不像是指向这个关联。