2010-02-17 2 views
0

Я смотрел файл dbml в редакторе xml и заметил, что некоторые свойства имеют поле хранения, а некоторые нет. Я также заметил, что у некоторых было имя, которое я предполагаю, это имя поля в sql. Если свойство в файле dbml имеет другое имя от имени в sql, оно добавит атрибут member. Я не понимаю, почему некоторые поля имеют атрибут хранения, а некоторые нет?Как Linq Определяет, имеет ли простейшая область хранения?

ответ

1

Из MSDN

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

Посмотрите here

+0

Спасибо. Я понимаю цель, но я не понимаю, почему некоторые поля имеют атрибут, а некоторые нет? – Xaisoft

0

Иногда поля в базе данных имеет имя, которое не слишком полезно для объяснения того, что она делает, и поэтому программисту изменить имя в код, чтобы помочь им запомнить, для чего он нужен, и добавить параметр Name, чтобы сообщить Linq, что он фактически хранится где-то еще.

Что делает свойство хранилища, позволяет разместить бизнес-логику в общедоступных аксессуарах и по-прежнему позволять Linq напрямую обращаться к данным, не проходя эту бизнес-логику. Таким образом Linq не будет запускать ваш бизнес-код каждый раз, он просто загрузит и сохранит данные из вашей частной переменной хранилища.

http://msdn.microsoft.com/en-us/library/bb386940.aspx

Смежные вопросы