私はいくつかのCRUD機能を持つMVCアプリケーションを持っています。新しいレコードを作成すると、自動的に生成されるはずのフィールドの1つが0を返します。新しいレコードが作成されるたびに増分するためにこのフィールドに値を設定できます。ありがとう。MVCでintフィールドをEFデータベースに手動でインクリメントするC#
テストでは、レコードを追加するたびにStoreNumberが0のままであることが示されています。
コントローラー:
public ActionResult Create()
{
ViewBag.CustomerID = new SelectList(db.Customers, "CustomerID", "CustomerCompanyName");
return View();
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "StoreID,CustomerID,StoreName,StoreUID,StoreNumber,StoreLogo,StoreLogoPath,StoreAddress,StoreCity,StoreRegion,StoreCountry")] Store store)
{
if (ModelState.IsValid)
{
store.StoreUID = Guid.NewGuid();
db.Stores.Add(store);
db.SaveChanges();
return RedirectToAction("Index");
}
ViewBag.CustomerID = new SelectList(db.Customers, "CustomerID", "CustomerCompanyName", store.CustomerID);
return View(store);
}
ストアクラス
public partial class Store
{
public int StoreID { get; set; }
public int CustomerID { get; set; }
public string StoreName { get; set; }
public System.Guid StoreUID { get; set; }
public int StoreNumber { get; set; }
public string StoreLogo { get; set; }
public string StoreLogoPath { get; set; }
public string StoreAddress { get; set; }
public string StoreCity { get; set; }
public string StoreRegion { get; set; }
public string StoreCountry { get; set; }
public virtual Customer Customer { get; set; }
}
まだ返っています0 –
あなたはマネージメントスタジオを持っていますか? –
modelBuilder.Entity().Property(a => a.StoreNumber ).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity); –