2013-03-19 3 views
0

У меня есть некоторая проблема в настройке пути моего SDF db.WinCE: невозможно вставить данные в базу данных sdf

Моя изначальная связь

<add name="Model1Container" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlServerCe.4.0;provider connection string=&quot;data source=|DataDirectory|\Database1.sdf&quot;" providerName="System.Data.EntityClient" /></connectionStrings> 

Затем я попытался использовать ConfigurationManager, чтобы получить строку подключения к БД, но он выдает ошибку (метаданные не поддерживает)

После этого, вместо того чтобы использовать строку подключения у меня есть пытались несколько других методов, таких как:

string StartupPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase); 
     string datalogicFilePath = Path.Combine(StartupPath, "Database1.sdf"); 
     string connectionString = string.Format("DataSource={0}", datalogicFilePath); 

Это один выбросит исключение формат URI

@"Data Source = |DataDirectory|\Database1.sdf" 

Этот пользователь может вернуть 1 для ExecuteNonQuery, но я не вижу никаких изменений на нем.

Тогда я понял, что это могут быть свойства каталога «Копировать в вывод». Я попробовал «не копировать» и дал сообщение об ошибке, где bin \ database1.sdf не найден. Я вернул его в «Копировать, если новый».

Но когда я использовал полный путь к базе данных C: ..................... \ Project \ database1.sdf, он смог обновить db , Есть ли какой-либо возможный способ сделать это, а не полный путь?

ответ

0

У меня такая же проблема, и, наконец, решить ее, На самом деле сохраняет данные, но не в .SDF он показывает в обозревателе серверов (который находится в корневой папке приложения обычно), но в .SDF в папке отладки также, когда вы публикуете приложение, которое оно публикует, с корневым .sdf, который обычно вставляет данные. надеюсь, что я вас не смутил, и это помогло вам. -Masology

0

попытка использовать локальный путь Data Source = C: \ Users \ ABC \ Documents \ Visual Studio 2010 \ Projects \ ABC \ ABC \ Database1.sdf; Password = Qwer 234; Упорство Info Security = True "

Смежные вопросы