Linq to sql Linq如何确定属性是否具有存储字段?

Linq to sql Linq如何确定属性是否具有存储字段?,linq-to-sql,Linq To Sql,我在xml编辑器中查看一个dbml文件,注意到有些属性有一个存储字段,有些没有。我还注意到有些字段有名称,我假设它是sql中字段的名称。如果dbml文件中的属性与sql中的属性名称不同,它将添加成员属性。我不明白为什么有些字段有存储属性,而有些字段没有存储属性?来自MSDN **DataAttribute.Storage Property** Gets or sets a private storage field to hold the value from a column. 查看一下有时

我在xml编辑器中查看一个dbml文件,注意到有些属性有一个存储字段,有些没有。我还注意到有些字段有名称,我假设它是sql中字段的名称。如果dbml文件中的属性与sql中的属性名称不同,它将添加成员属性。我不明白为什么有些字段有存储属性,而有些字段没有存储属性?

来自MSDN

**DataAttribute.Storage Property**
Gets or sets a private storage field to hold the value from a column.

查看一下

有时数据库中的字段的名称对解释它的功能没有太大帮助,因此程序员会更改代码中的名称以帮助他们记住它的用途,并添加name参数来告诉Linq它实际上存储在其他地方

存储属性允许您将业务逻辑放入公共字段访问器,并且仍然允许Linq直接访问数据,而无需通过该业务逻辑。这样,Linq不会每次都运行您的业务代码,它只会从您的私有存储变量加载和保存数据


请参阅:

谢谢。我理解其目的,但我不明白为什么有些字段具有该属性,而有些字段没有?