C# Dbml将1添加到EntitySet名称
嗨,我得到了一个dbml文件,它开始在EntitySet名称的末尾添加一个1 有什么办法可以永久解决这个问题吗?如果我在设计器文件中更改它,当文件为updatet时,它将返回C# Dbml将1添加到EntitySet名称,c#,.net,linq,linq-to-sql,entityset,C#,.net,Linq,Linq To Sql,Entityset,嗨,我得到了一个dbml文件,它开始在EntitySet名称的末尾添加一个1 有什么办法可以永久解决这个问题吗?如果我在设计器文件中更改它,当文件为updatet时,它将返回 [global::System.Data.Linq.Mapping.AssociationAttribute(Name="Product_CompositeProduct", Storage="_CompositeProducts1", ThisKey="ProductNo", OtherKey="ParentID")]
[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);
}
}
[global::System.Data.Linq.Mapping.AssociationAttribute(Name=“Product\u CompositeProduct”,Storage=“\u CompositeProducts1”,ThisKey=“ProductNo”,OtherKey=“ParentID”)]
公共实体集复合产品1
{
收到
{
返回此。\u合成产品1;
}
设置
{
此._复合产品1.分配(值);
}
}
我可以只更改代码的其余部分,但我不希望名称中有1。似乎您已经有了名为CompositeProducts的属性,这就是为什么它在实体集的末尾添加了1。下次它将添加2个。同一个表中是否有多个ForeignKey?它有1个primary和1个ForeignKey我在哪里可以检查?当我以可视方式打开Db.dbml文件时,我只能找到CompositeProduct的一个实例,可能是Db.dbml.layout文件中的一个错误?通过在xml编辑器中打开Db.dbml并重命名它,使其正常工作。还可以确认只有1个实例。虽然它现在正在发挥作用,但我认为它再次发生只是时间问题。所以一个永久性的修复是很好的。有可能你现在正在连接到另一个数据库吗。例如,您基于sqlserver1上的db生成了dbml,然后您连接到SQLServer2.J.W上的一个db,在某一点上它连接到另一个sqlserver以解决速度问题,这可能是原因。但目前看来,它已经通过xml编辑DB dbml修复了