0

直視できなくなるまでじっと見つめていました。サービスに変換する前にロジックをテストするために使用しているコンソール アプリがあります。同じコードは、Web アプリから起動されたときに正常に動作します。学生オブジェクトは正常に入力され、エラーはスローされませんが、データベースに保存されません。私が見逃しているものについての洞察はありますか?

私の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();
    }
}
4

1 に答える 1

0

オブジェクトを保存していたことがわかりました。接続文字列で指定されているものとは異なるデータベースに対してのみ。それを修正する方法について、SOについて別の質問があります。

于 2012-06-16T19:38:47.343 に答える