Я хочу использовать встроенную версию SQL Server Compact в моем проекте asp.net mvc 4. Стараюсь подходы, но у меня есть проблемы с любым подходом:Entity Framework: установка правильной строки подключения для 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 Edition, как встроенный в моем веб-приложение asp.net MVC 4 и поместить этот файл .sdf
в моей \App_Data
папку и сделать его работы с правильного подключения строки в web.config
.
'| DataDirectory | \ App_Data' дает' App_Data \ App_Data', если я не неправильно. Попробуйте «Источник данных = | DataDirectory | \ MyDatabaseSQLCe.sdf'. Вы можете проверить это, сбросив 'AppDomain.CurrentDomain.GetData (« DataDirectory »). ToString()' на вашей веб-странице. – Will
Вы правы, это была одна ошибка при первом подходе. Вторая ошибка в первом подходе, касающаяся ошибки сообщения, я googled, и я обнаружил, что компакт-диск sql-сервера не был использован для использования на ASP.NET, из-за его нескольких ограничения, связанные с «нормальными» выпусками SQL Server, и чтобы избежать этого сообщения, я должен поместить в метод Application_Start в global.asax.cs следующую строку: AppDomain.CurrentDomain.SetData («SQLServerCompactEditionUnderWebHosting», true), тогда ошибка исчезает, и приложение переходит ok, таблицы создаются в файле базы данных и т. д. – user1624552
NOw Я хотел бы знать, как решить 2 подхода, используя sql server compact 4.0. Я установил его, но при попытке создать новое подключение к данным из проводника сервера опция SQL Server Compact 4.0 не появляется в visual studio, почему? – user1624552