没有主键的SQLite表,但为什么要为每个更新生成记录

时间:2014-05-07 05:38:30

标签: sqlite winrt-xaml windows-phone-8.1

我使用Class创建一个没有主键的SQlite表,如下所示。但每次更新时,SQLite都会为每次更新生成记录。它应该覆盖它首次创建的相同记录,但不应为每次更新生成记录。

感谢。


Not adding this to the class:   [PrimaryKey, AutoIncrement]

class NetworkCredential
 {

        public string WebServiceName { get; set; }

        public string WebServer { get; set; }

        public int Port { get; set; }

        public string Company { get; set; } 

        public int DefaultCredential { get; set; }

    }


 using (var db = new SQLite.SQLiteConnection(DBPath))
 {
    var User = db.Query("Select * From NetworkCredential").FirstOrDefault();

    if (User != null)
    {
        User.WebServiceName = txtWebServer.Text.Trim();
        User.WebServer = txtWebServer.Text.Trim();
        User.Port = Convert.ToInt32(txtPort.Text);

        int success = db.InsertOrReplace(User);    
    }
   else
    {
        int success = db.Insert(new NavNetworkCredential()
          {
             WebServer = txtWebServer.Text.Trim(),
             WebServiceName = txtWebServiceName.Text.Trim(),
             Port = Convert.ToInt32(txtPort.Text)

            });
  }





0 个答案:

没有答案