3

我想在我的应用程序中使用数据库,但有一些错误:

Microsoft.Phone.Data.Internal.ni.dll 中出现“System.Data.SqlServerCe.SqlCeException”类型的异常,但未在用户代码中处理

如果有这个异常的处理程序,程序可以安全地继续。

它发生在:

 if (true == db.PersonData.Any())

db.PersonData.InsertOnSubmit(newData);

该代码适用于 wp7 ....您如何修复它?

谢谢~

[Table]
public class CPersonData
{
    [Column]
    public string Lat { get; set; }
    [Column]
    public string Lon { get; set; }

    [Column]
    public string SelectShopType { get; set; }

    [Column]
    public DateTime UpdateTime { get; set; }
}

public class DataBase : DataContext
{
    public Table<CPersonData> PersonData;

    public DataBase(string strConnection) : base(strConnection)
    {
        if (false == this.DatabaseExists())
            this.CreateDatabase();
    }
}

using (var db = new DataBase("Data Source=isostore:/FindTea.sdf"))
{
    CPersonData newData = new CPersonData();
    newData.Lat = "";
    newData.Lon = "";
    newData.SelectShopType = "1,2,3";
    db.PersonData.InsertOnSubmit(newData);
    db.SubmitChanges(); 
}
4

1 回答 1

2

我发现问题了!!!我没有在这个表中放主键,所以当我添加这个

        [Column(IsPrimaryKey = true, IsDbGenerated = true, DbType = "INT NOT NULL Identity", AutoSync = AutoSync.OnInsert, CanBeNull = false)]
    public int ID { get; set; }

应用程序不会崩溃!!!!

于 2012-12-07T01:56:53.117 回答