Подключение к базе данных .sdf из подкаталога сайта в ASP.NET Razor

У меня есть небольшой веб-сайт, который я создаю с использованием синтаксиса веб-страниц ASP.NET Razor. У него есть база данных SQL CE 4 в папке App_Data. Соединение и получение записей из базы данных прекрасно работает на страницах, находящихся в корневом каталоге и подкаталоге /Account. Однако при попытке получить данные из базы данных на страницах, находящихся в других подкаталогах, подключение к базе данных не работает. Я получаю сообщение об ошибке: Строка подключения «Database.sdf» не найдена.

Он использует строку подключения из файла Web.config в корневом каталоге:

Когда я попытался скопировать корневой файл Web.config в подкаталог, я получил следующую ошибку:

Запись «База данных» уже добавлена. (C:\Users\Name\Documents\Visual Studio 2010\WebSites\SmallWebsite\subdir\web.config, строка 11).

На данный момент я в тупике и не могу найти ответ ни в msdn, ни в google. Любая помощь очень ценится.

спасибо нл


person nedlogan    schedule 04.04.2011    source источник


Ответы (1)


Решено! Оказывается, все, что мне нужно было сделать, это прочитать сообщение об ошибке. На корневых страницах я использовал код:

var db = Database.Open("База данных"); для подключения и в подкаталогах: var db = Database.Open("Database.sdf");

Как только я удалил .sdf, все заработало нормально!

Спасибо, нл

person nedlogan    schedule 04.04.2011