User Tools

Site Tools


developer:linq

Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
developer:linq [2011/05/05 22:27]
celutp
developer:linq [2011/09/14 12:17] (current)
celutp
Line 11: Line 11:
 ===== Предварительная настройка =====      ===== Предварительная настройка =====     
   * В [[admin:​config|конфигурационный файл Backend]] нужно добавить параметр **SqlMetalPath**,​ определяющий путь к стандартной утилите генерации SQL-классов. Данная утилита устанавливатся вместе с Visual Studio 2008. Путь к ней может выглядеть так: ''​C:​\Program Files\Microsoft SDKs\Windows\v6.0A\bin\sqlmetal.exe''​. Если на целевом компьютере не установлена Visual Studio, утилиту можно просто [[http://​downloads.quantumart.ru/​sqlmetal.zip|скачать]].   * В [[admin:​config|конфигурационный файл Backend]] нужно добавить параметр **SqlMetalPath**,​ определяющий путь к стандартной утилите генерации SQL-классов. Данная утилита устанавливатся вместе с Visual Studio 2008. Путь к ней может выглядеть так: ''​C:​\Program Files\Microsoft SDKs\Windows\v6.0A\bin\sqlmetal.exe''​. Если на целевом компьютере не установлена Visual Studio, утилиту можно просто [[http://​downloads.quantumart.ru/​sqlmetal.zip|скачать]].
-  * Необходимо дать право доступа //Modify// пользователю NETWORK SERVICE на папку //​App_Code//​ для возможности генерации файлов классов и папку //​App_Data//​ для генерации промежуточных файлов отображений.+  * Необходимо дать право доступа //Modify// пользователю, под которым запущен Application Pool (обычно это ​NETWORK SERVICE), на папку //​App_Code//​ для возможности генерации файлов классов и папку //​App_Data//​ для генерации промежуточных файлов отображений.
   * В процессе работы утилита **SQLMetal** может выдавать ошибки,​ которые можно посмотреть в файле //​sqlmetal.log//​ в папке //​App_Data//​. Ошибки обычно связаны с конфликтами имен.   * В процессе работы утилита **SQLMetal** может выдавать ошибки,​ которые можно посмотреть в файле //​sqlmetal.log//​ в папке //​App_Data//​. Ошибки обычно связаны с конфликтами имен.
   * Если на сайте не использовался LINQ-to-SQL,​ то необходимо добавить в //​web.config//​ ссылки на соответствующие сборки:​   * Если на сайте не использовался LINQ-to-SQL,​ то необходимо добавить в //​web.config//​ ссылки на соответствующие сборки:​
Line 41: Line 41:
 Сборка контентов QP7 в классы //​LINQ-to-SQL//​ может осуществляться в двух режимах:​ Сборка контентов QP7 в классы //​LINQ-to-SQL//​ может осуществляться в двух режимах:​
  
-  - [[developer:​linq:​db_mapping|С использованием БД]]. При этом будут использованы специальные настройки LINQ-to-SQL,​ которые задаются в свойствах контентов и полей.+  - [[developer:​linq:​db_mapping|С использованием БД]]. При этом будут использованы специальные настройки LINQ-to-SQL,​ которые задаются в свойствах ​сайта, ​контентов и полей.
   - [[developer:​linq:​mapping|С использованием пользовательского файла отображения]]. При этом файл может быть как составлен разработчиком вручную,​ так и сгенерирован бэкендом по умолчанию.   - [[developer:​linq:​mapping|С использованием пользовательского файла отображения]]. При этом файл может быть как составлен разработчиком вручную,​ так и сгенерирован бэкендом по умолчанию.
  
Line 48: Line 48:
 Кроме этого, на [[:​site_configuration#​Настройки_сборки_в_LINQ|уровне сайта]] существует опция **Импортировать файл отображения в базу данных**(**Import mapping file to database**),​ которая позволяет импортировать существующий [[developer:​linq:​mapping|пользовательский файл отображения]] в базу данных для последующей настройки через бэкенд QP7 и генерации файла отображения в автоматическом режиме. При успешном выполнении импорта данная опция автоматически сбрасывается,​ а опция **Использовать прямое отображение из базы данных** (**Use direct mapping from database**) автоматически устанавливается. ​ Кроме этого, на [[:​site_configuration#​Настройки_сборки_в_LINQ|уровне сайта]] существует опция **Импортировать файл отображения в базу данных**(**Import mapping file to database**),​ которая позволяет импортировать существующий [[developer:​linq:​mapping|пользовательский файл отображения]] в базу данных для последующей настройки через бэкенд QP7 и генерации файла отображения в автоматическом режиме. При успешном выполнении импорта данная опция автоматически сбрасывается,​ а опция **Использовать прямое отображение из базы данных** (**Use direct mapping from database**) автоматически устанавливается. ​
  
-Опция **Импортировать файл отображения в базу данных**(**Import mapping file to database**) также может быть полезна для первичного заполнения настроек LINQ-to-SQL для существующего сайта с большим количеством контентов. Для этого сначала генерируется ​[[developer:​linq:​mapping| ​пользовательский файл отображения]] по умолчанию (при отключенной опции **Использовать прямое отображение из базы данных** (**Use direct mapping from database**),​ а затем проводится его импорт.+Опция **Импортировать файл отображения в базу данных**(**Import mapping file to database**) также может быть полезна для первичного заполнения настроек LINQ-to-SQL для существующего сайта с большим количеством контентов. Для этого сначала генерируется пользовательский файл отображения по умолчанию (при отключенной опции **Использовать прямое отображение из базы данных** (**Use direct mapping from database**),​ а затем проводится его импорт
 + 
 +Генерация LINQ-to-SQL классов и вспомогательных файлов осуществляется в папки //​App_Data//​ и //​App_Code//​ сайта. Расположение этих папок вычисляется из расположения папки //bin//, которая настраивается в [[:​site_configuration#​папка_для_net-сборок|свойствах сайта]]. При этом предполагается,​ что папки //​App_Data//​ и //​App_Code//​ находятся на том же уровне в дереве папок, что и //bin//
  
  
Line 57: Line 59:
   - [[developer:​linq:​container|Поддержка поведения Publishing Container]]   - [[developer:​linq:​container|Поддержка поведения Publishing Container]]
   - [[developer:​linq:​service_field|Поддержка служебных полей контента]]   - [[developer:​linq:​service_field|Поддержка служебных полей контента]]
 +  - [[developer:​linq:​image|Дополнительные свойства для полей-изображений]]
   - [[developer:​linq:​caching|Кэширование]]   - [[developer:​linq:​caching|Кэширование]]
 +  - [[developer:​linq:​components|Создание компонентов]]
   - [[developer:​linq:​errors|Основные ошибки использования LINQ-to-SQL классов]]   - [[developer:​linq:​errors|Основные ошибки использования LINQ-to-SQL классов]]
  
developer/linq.1304623635.txt.gz · Last modified: 2011/05/05 22:27 by celutp