Entity Framework Кажется, что хочет использовать Sql Server Provider, несмотря на необходимость Sql CE
Я использую базу данных SqlCe 4 с первой моделью данных кода Entity Framework 6.
Я установил строку подключения в конструкторе DbContext следующим образом:
private static readonly string DATABASE_PASSWORD = "...";
private static readonly string CONNECTION_STRING = string.Format(@"Data Source={0};Password={1}", MyProject.Properties.Settings.Default.DatabaseLocation, DATABASE_PASSWORD);
public DataModel()
: base(CONNECTION_STRING)
{
}
И когда я запускаю свое приложение, которое использует эту модель, оно работает.
Однако в конструкторе в Visual Studio он продолжает зависать примерно 30 секунд, когда я пытаюсь просмотреть элемент управления WPF, который загружает набор записей в конструкторе модели View, и я получаю следующее сообщение об ошибке:
Error 2 Unable to complete operation. The supplied SqlConnection does not specify an initial catalog or AttachDBFileName.
Я не использую SqlServer Я использую Sql Server Compact, поэтому не нужно даже думать об использовании Sql Server.
Кто-нибудь может увидеть что-то не так с моей строкой подключения?
1 ответ
Просмотр сообщения об ошибке (...The supplied SqlConnection..
) Я пришел к выводу, что вы устанавливаете SQlConection
скорее, чем SQlCeConnection
Убедитесь, что вы установили объект SQL следующим образом:
conn = new SqlCeConnection(CONNECTION_STRING);
conn.Open();
SqlCeCommand cmd = conn.CreateCommand();
cmd.CommandText = "..."
И убедитесь, что вы добавили ссылку на SQL Server Compact provider
, System.Data.SqlServerCe.dll