簡體   English   中英

控制台應用程序實體框架db.savechanges不保存

[英]console app Entity Framework db.savechanges not saving

我一直在盯着它,直到看不到直視。 我有一個控制台應用程序,可以在將其轉換為服務之前對邏輯進行測試。 從Web應用程序中觸發時,相同的代碼可以正常工作。Student對象可以很好地填充,並且不會引發任何錯誤,但是永遠不會保存到數據庫中。 對我想念的東西有什么見識嗎?

我的app.config文件具有連接字符串

<connectionStrings>
  <add name="DatabaseContext" connectionString="Data Source=|DataDirectory|Development.sdf" providerName="System.Data.SqlServerCe.4.0" />
  <add name="DevelopmentEntities" connectionString="metadata=res://*/EntityModel.csdl|res://*/EntityModel.ssdl|res://*/EntityModel.msl;provider=System.Data.SqlServerCe.4.0;provider connection string=&quot;Data Source=|DataDirectory|\Development.sdf&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>

foreach (DataRow dr in dt.Rows)
{
    //fill student object and add to list
    Student s = new Student();
    s.SID = dr[0].ToString();
    s.FirstName = dr[1].ToString();
    s.LastName = dr[2].ToString();
    if (sctType == "TRAD")
    { s.Type = Convert.ToInt32(UniversityGateway.Data.Models.StudentType.Traditional); }
    else
    { s.Type = Convert.ToInt32(UniversityGateway.Data.Models.StudentType.AGS); }
    s.Email = dr[5].ToString();
    s.Address = new Address
    {
         Street = dr[6].ToString(),
        City = dr[9].ToString(),
        State = dr[10].ToString(),
        Zip = dr[11].ToString(),
    };
    s.UserActive = "Y";
    s.Status = Convert.ToInt32(UniversityGateway.Data.Models.StudentStatus.Pending);
    s.Password = "kHPrSps3JnTkmky7PakBZg==Wdc9Qgcz39p+s6+fqk/nUw==";
    students.Add(s);
    using (var db = new UniversityGateway.Data.DatabaseContext())
    {
        db.Students.Add(s);
        db.SaveChanges();
    }
}

原來是保存對象。 只是與連接字符串中指定的數據庫不同。 在SO方面還有另一個問題,如何解決這個問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM