Windows Phone アプリケーションで esxiting .sdf ファイルを使用しています。データベースを開こうとすると、次のようなエラーが発生します。データベース ファイルへのアクセスは許可されていません [1981,Filename='\Applications\install\OFC425F3-22CC-4A60-A815-40FE......\install\Countries. sdf,SeCreateFile]
私のコード:
private const string strConnectionString = "Data Source = 'appdata:/Countries.sdf'";
private void Button_Click_1(object sender, RoutedEventArgs e)
{
try
{
IList<Country> countryList = this.GetCountryList();
}
catch (Exception c)
{
MessageBox.Show(c.Message);
}
}
public IList<Country> GetCountryList()
{
// Fetching data from local database
IList<Country> countryList = null;
try
{
using (CountryDataContext countryDB = new CountryDataContext(strConnectionString))
{
IQueryable<Country> countryQuery = from _contry in countryDB._countries select _contry;
// MessageBox.Show(countryQuery.Count().ToString());
countryList = countryQuery.ToList();
}
}
catch (Exception c)
{
MessageBox.Show(c.Message);
}
return countryList;
}
これで試したとき
private const string strConnectionString = "Data Source = 'appdata:/Countries.sdf'; File Mode =read only;";
次のようなエラーが発生しています:dBは読み取り専用接続で開かれています。インデックスの再構築やパブリック トラッキングのアップグレードなど、初期化後の操作を実行できません。読み取り/書き込み接続で再度開いてください。
データベースを読み取り/書き込みモードで開くには? データベースを開くために必要な権限はありますか (データベースはパスワードで保護されていません)?