私はこれに比較的慣れていませんが、これは本当に単純なはずなので、まだ少し恥ずかしいです...
私がやろうとしているのは、データベーステーブルの既存の行を更新することだけです。私は最初にEF(私が信じる5)コードを使用しています。
MVC 3の場合、私はこのアプローチを使用しました(これは機能しました):
ReportCommon reportcommon = db.ReportCommon.Single(r => r.ReportCommonId == id);
reportcommon.IP = StaticUtilities.GetIPAddress();
db.ObjectStateManager.ChangeObjectState(reportcommon, EntityState.Modified);
db.SaveChanges();
私が見つけたいくつかの例を試しましたが、エラーは発生しませんが、データベースは更新されません...
[HttpPost]
public ActionResult Edit(CitizenEntryViewModel citizenDetails)
{
ActiveCitizen activeCitizen = db.ActiveCitizen.SingleOrDefault(m => m.ID == citizenDetails.ActiveCitizen.ID);
if (activeCitizen != null)
{
citizenDetails.ActiveCitizen.CitizenUpdatedRecordOn = DateTime.Now;
// Fields we don't edit but still need to pass back
citizenDetails.ActiveCitizen.PublicID = activeCitizen.PublicID;
citizenDetails.ActiveCitizen.IsKIN = activeCitizen.IsKIN;
activeCitizen = citizenDetails.ActiveCitizen;
db.SaveChanges();
}