Я хочу использовать встроенную версию SQL Server Compact в моем проекте asp.net mvc 4. Я пытаюсь подойти, но у меня проблемы с любым подходом:
Первая попытка
Я создал новое подключение к данным из визуальной студии и из обозревателя серверов типа Microsoft SQL Server Compact 3.5, и я сохраняю файл .sdf
в моем проекте asp.net mvc 4 в папке \App_Data
(я добавляю этот файл .sdf
в эту папку). Я предполагаю, что при этом я создаю и встраиваю базу данных SQL Server Compact для своего веб-приложения, я прав?
Наконец, я создаю следующую строку подключения в web.config
:
<add name="DefaultConnection"
providerName="System.Data.SqlServerCe.3.5"
connectionString="Data Source=|DataDirectory|\App_Data\MyDatabaseSQLCe.sdf" />
Я запускаю свое веб-приложение, но возникает ошибка, база данных, похоже, не найдена, ну, ошибка говорит что-то вроде:
SQL Server Compact не предназначен для разработки asp.net.
Я не уверен, что описанная выше строка подключения верна.
Вторая попытка
Также я скачал SQL Server Compact 4.0 отсюда: http://www.microsoft.com/en-us/sqlserver/editions/2012-editions/compact.aspx, и я установил. После установки. Если я перейду к созданию подключения к данным, как описано выше, SQL Server Compact 4.0 из Visual Studio не появится. Я хотел бы использовать встроенный SQL Server Compact в своем проекте, но я совершенно потерян.
Вывод: моя цель - использовать версию SQL Server Compact, встроенную в мое веб-приложение asp.net mvc 4, поместить этот файл .sdf
в мою папку \App_Data
и заставить его работать с правильным строковым соединением в web.config
.
|DataDirectory|\App_Data
даетApp_Data\App_Data
, если я не ошибаюсь. ПопробуйтеData Source=|DataDirectory|\MyDatabaseSQLCe.sdf
. Вы можете проверить это, разместивAppDomain.CurrentDomain.GetData("DataDirectory").ToString()
на своей веб-странице. - person   schedule 18.09.2013