2011-05-12 36 views
1

嗨我有一个dbml文件,开始添加1到一个EntitySet名称的末尾 有没有什么办法可以永久解决这个问题?如果我在设计器文件中更改它,它只是在文件更新时返回。Dbml添加1到EntitySet名称

[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Product_CompositeProduct", Storage="_CompositeProducts1", ThisKey="ProductNo", OtherKey="ParentID")] 
     public EntitySet<CompositeProduct> CompositeProducts1 
     { 
      get 
      { 
       return this._CompositeProducts1; 
      } 
      set 
      { 
       this._CompositeProducts1.Assign(value); 
      } 
     } 

我可以改变我的代码的其余部分,但我不喜欢名称中有1。

+0

你有多个外键到同一个表吗? – Pleun 2011-05-12 15:03:21

+0

它有1个主要和1个外来关键码 – gulbaek 2011-05-12 15:18:57

回答

0

看来您已经拥有了名为CompositeProducts的属性,这就是为什么它在实体集的末尾添加1的原因。它会在下一次加2。

+0

我在哪里可以检查?当我以可视方式打开Db.dbml文件时,我只能找到CompositeProduct的1个实例,可能是Db.dbml.layout文件中的错误? – gulbaek 2011-05-12 15:11:54

+1

通过在xml编辑器中打开Db.dbml,并将其重新命名,从而获得它的工作。也可以确认只有1个实例。尽管它现在在工作,但我认为在它再次发生之前,它只是一个时间问题。所以永久性修复会很好。 – gulbaek 2011-05-12 15:41:52

+0

现在是否有可能连接到不同的数据库。例如,您基于sqlserver1上的db生成了dbml,然后连接到sqlsever2上的db。 – 2011-05-12 17:53:05