User Tools

Site Tools


developer:linq:assembling

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
developer:linq:assembling [2011/05/06 15:45]
celutp removed
— (current)
Line 1: Line 1:
-====== Алгоритм сборки LINQ-to-SQL классов ====== 
-  - Проверяется наличие файла //​mapping.xml//​ в  папке //​App_Data//​. Eсли файл отсутствует,​ то отображение по умолчанию генерируется в файле //​mapping.xml//,​ иначе – в файле //​defaultMapping.xml//​. 
-  - Файл //​mapping.xml//​ доопределяется информацией из БД. Результат записывается в файл //​App_Data/​mappingResult.xml//​. 
-  - Из QP7 Backend в папку //​App_Data//​ копируются XSLT-файлы отображения 
-  - C помощью XSLT дополненный файл отображения преобразуется в формат DBML (файл //​App_Data/​QP.dbml//​) 
-  - Файл //QP.dbml// подается на вход утилите //​SqlMetal.exe//,​ которая генерирует базовые определения LINQ-to-SQL классов (файл //​App_Code/​QPDataContext.cs//​) 
-  - C помощью XSLT из дополненного файла отображения генерируются частичные методы для поддержки редактирования контентов QP7 (файл //​App_Code/​QPDataContextModification.cs//​) 
-  - C помощью XSLT из дополненного файла отображения генерируются свойства для поддержки полей Many-To-Many (так как встроенная поддержка для полей типа Many-to-Many отсутствует в LINQ-to-SQL). Файл //​App_Code/​QPDataContextMany.cs//​. 
-  - С помощью XSLT из дополненного файла отображения генерируются методы расширения сущностных классов LINQ-To-SQL . Файл //​App_Code/​Extensions.xslt//​.