我有一個對象,該對象具有創建時應始終使用對象的ID(主鍵)填充的屬性。創建對象時需要將對象ID分配給字段
我該怎麼做?
我已經嘗試在數據庫savechanges()之後將字段賦值給字段,然後再返回視圖,但是在我的數據庫上創建了兩條記錄。
也嘗試加載相同的新實例,將id分配給該字段並保存它,但也創建兩個記錄。
感謝您的任何幫助。
//model
public partial class supplier
{
public int id { get; set; }
public int ref { get; set; }
}
//controller
public ActionResult Create(supplier sup)
{
if (ModelState.IsValid)
{
db.suppliers.add(sup)
db.SaveChanges();
sup.ref = sup.id;
db.SaveChanges();
}
...
}
大家好,感謝你的幫助......我已經找到了解決辦法...真的不知道這是否是正確的,但它的工作。
對於任何有興趣在這裏它是:
supplier needToUpdateSupplier = (from s in db.suppliers where s.id.Equals(supplier.id) select s).ToList().FirstOrDefault();
if (needToUpdateSupplier != null)
{
needToUpdateSupplier.ref = supplier.id;
db.suppliers.Attach(needToUpdateSupplier);
db.Entry(needToUpdateSupplier).Property(e => e.ref).IsModified = true;
db.SaveChanges();
}
這個問題需要更多的細節。你如何將數據保存到數據庫?你在使用實體框架等嗎? – MrDustpan
對不起,是的,我正在使用EF ...不是C#開發人員... – user2881726
爲什麼你要引用它自己?這會增加數據庫或應用程序中的關係的價值麼? – Justin