SubSonic ActiveRecord в HttpHandler (где находится строка подключения?) - PullRequest
1 голос
/ 16 июля 2009

Я использую SubSonic 3.0.0.3 (подход ActiveRecord) в HttpHandler, который есть в его собственной библиотеке. Чтобы это работало в конце, у меня должна быть строка соединения в web.config веб-сайта вместо app.config библиотеки классов. Это ожидаемый результат или ошибка?

Ответы [ 2 ]

6 голосов
/ 16 июля 2009

Единственная конфигурация, которая выбирается, - это конфигурация среды выполнения - сохранение ее в классе lib не будет работать - для любого параметра конфигурации.

Вы можете переопределить поведение нашего шаблона, отправив строку подключения с помощью ProviderFactory (как указано выше).

3 голосов
/ 16 июля 2009

Используя Reflector, я проверил метод ProviderFactory.GetProvider(connectionStringName) SubSonic, который вызывается в конструкторе сгенерированного вами класса Db / Context.

Используется ConfigurationManager для поиска строк подключения (как и ожидалось). Поэтому, когда вы запускаете веб-приложение, оно будет искать в файле web.config известные строки подключения. Вам необходимо скопировать конфигурацию строки подключения в файл .config для приложения, использующего вашу .dll.

...