EF4 Self Tracking Entities (VS2010 Beta 2 CTP 2 と新しい T4 ジェネレーター) を使用しています。しかし、エンティティ情報を更新しようとすると、期待どおりにデータベースに更新されません。
2 つのサービス コールをセットアップします。1 つはリソース オブジェクトを返す GetResource(int id) 用です。2 番目の呼び出しは SaveResource(Resource res) です。これがコードです。
public Resource GetResource(int id)
{
using (var dc = new MyEntities())
{
return dc.Resources.Where(d => d.ResourceId == id).SingleOrDefault();
}
}
public void SaveResource(Resource res)
{
using (var dc = new MyEntities())
{
dc.Resources.ApplyChanges(res);
dc.SaveChanges();
// Nothing save to database.
}
}
//Windows Console Client Calls
var res = service.GetResource(1);
res.Description = "New Change"; // Not updating...
service.SaveResource(res);
// does not change anything.
ChangeTracker.State は常に「Unchanged」と表示されるようです。
このコードに何か問題がありますか?