Linq to SQL:如何停止重命名自动生成的对象名称?

时间:2008-12-02 23:15:28

标签: sql linq linq-to-sql

在visual studio 2008中,当我将数据库表拖到我的dbml屏幕中时,任何以字母s结尾的表都会自动从dbml对象中删除。有没有办法禁用它?

此外,行集合还会附加到集合属性名称中。还有办法改变它吗?

由于

2 个答案:

答案 0 :(得分:37)

您需要为LINQ to SQL设计器禁用Pluralize Table Name。

要执行此操作,请导航至工具 - >选项 - >数据库工具 - > O / R Designer并将多个名称更改为 false

然后你需要重新编译你的项目,它应该解决命名

答案 1 :(得分:0)

在代码优先的场景中,只需使用Table属性指定实体上表的名称,就可以在更细粒度的级别上处理这样弹出的一些问题:

    [Table("QTPhotos")]
    public class QTPhoto 

我发现,最初,我们有一个简单的实体名称“Photo”,但这与某些事物(我们的实体名称很多)相冲突,所以我们开始对它们进行限定(“QT”作为样本前置),突然间出现了这个问题。所以我打赌这是因为“照片”是一个以'o'结尾的公认单词,不会复数为“..”(如Potat oes ),但“QTPhoto”不是,意思是它试图找到一个名为“QTPhotoes”的表。

只需设置表名即可解决此问题。