Как встраивать sql-запросы в C #

Я пишу новый проект на C # с несколькими SQL-запросами в нем. Некоторые из них относительно большие и сложные. Я хочу знать, как лучше всего их хранить. В идеале я бы создал хранимые процедуры в базе данных, но база данных используется многими другими приложениями, поэтому лучше, если я смогу сохранить процедуры, специфичные для моего приложения, в моем приложении.

Возможные варианты:

  1. a строковый литерал ( const string query = "Select * From MyTable" )
    • Плюсы: простой, короткий
    • Минусы: нет подсветки синтаксиса, беспорядок для длинных запросов
  2. Создайте файл для каждого запроса как QueryName.sql
    • Плюсы: подсветка синтаксиса, более аккуратная для больших и сложных запросы
    • Минусы: много файлов для множества запросов (один запрос на файл), может быть, медленнее читать запрос из файла содержимого?
  3. Есть ли другие идеи?

В качестве дополнительной мысли, есть ли способ легко генерировать строго типизированные определения классов из запросов SQL?

7
задан marc_s 15 August 2011 в 12:07
поделиться