C# WP7-不允许访问数据库文件

C# WP7-不允许访问数据库文件,c#,database,windows-phone-7,sql-server-ce,C#,Database,Windows Phone 7,Sql Server Ce,这是我的班级: [Table] public class Question { [Column] public bool Sort { get; set; } [Column(IsPrimaryKey = true)] public int QuestionID { get; set; } [Column] public int Level { get; set; } [Column] public string Descripti

这是我的班级:

[Table]
public class Question
{
    [Column]
    public bool Sort { get; set; }
    [Column(IsPrimaryKey = true)]
    public int QuestionID { get; set; }
    [Column]
    public int Level { get; set; }
    [Column]
    public string Description { get; set; }
    [Column]
    public string Answer1 { get; set; }
    [Column]
    public string Answer2 { get; set; }
    [Column]
    public string Answer3 { get; set; }
    [Column]
    public string Answer4 { get; set; }
    [Column]
    public string RightAnswer { get; set; }
    [Column]
    public bool Show { get; set; }
}

public class QuestionContext : DataContext
{
    public QuestionContext(string connectionString)
        : base(connectionString)
    {
    }
    public Table<Question> Questions
    {
        get
        {
            return this.GetTable<Question>();
        }
    }
}

“不允许访问数据库文件”时出错。我想问题出在我的连接字符串上。怎么了?如何访问文件夹App_Data中的SQLCE数据库?

在App.config中添加以下内容

<connectionStrings>
  <add name="DataContext" 
       connectionString="Data source=DataDirectory|Database.sdf;"
       providerName="System.Data.SqlServerCe.4.0"/>
</connectionStrings>

您可以在此处了解有关ConnectionString中DataDirectory的更多信息:

在app.config中添加以下内容

<connectionStrings>
  <add name="DataContext" 
       connectionString="Data source=DataDirectory|Database.sdf;"
       providerName="System.Data.SqlServerCe.4.0"/>
</connectionStrings>

您可以在此处了解有关ConnectionString中的DataDirectory的更多信息:

您必须像这样编写连接字符串:

MyDataContext db = new MyDataContext("Data Source = 'appdata:/mydb.sdf'; File Mode = read only;");

数据库文件将是只读的…

您必须像这样组成连接字符串:

MyDataContext db = new MyDataContext("Data Source = 'appdata:/mydb.sdf'; File Mode = read only;");

数据库文件将是只读的…

我会尝试将数据库文件移动到另一个位置,例如,在Windows 7上,如果您尝试访问位于程序文件内的数据库文件(该文件仅限管理员用户使用),则会出现相同的错误。我看到了这一点,但我认为这不是我的问题。我将数据库添加到我的解决方案中,因此现在我将它放在我有project的位置,而它不在程序文件或其他具有类似限制的位置。我会尝试将数据库文件移动到其他位置,例如,在Windows 7上,如果您尝试访问程序文件中的数据库文件,则会出现相同的错误(仅限管理员用户使用)我看到了这一点,但我认为这不是我的问题。我将我的数据库添加到了解决方案中,因此现在我将它放在了项目所在的位置,而它不在程序文件或其他具有类似限制的位置。ConfigurationManager是否可用于Windows Phone?我添加了system.configuration,但ConfigurationManager仍然不存在。ConfigurationManager是否存在适用于Windows Phone?我添加了system.configuration,但ConfigurationManager仍然不存在。