我正在學習MVC2,我試圖創建一個數據請求管理系統。有點像票務系統。一個簡單的問題,在我的MVC控制器類我有一個後創建Linq到SQL插入 - ID不遞增
[HttpPost]
public ActionResult Create(Request request)
{
if (ModelState.IsValid)
{
try
{
// TODO: Add insert logic here
var db = new DB();
db.Requests.InsertOnSubmit(request);
db.SubmitChanges();
return RedirectToAction("Index");
}
catch
{
return View(request);
}
}
else
{
return View(request);
}
}
好吧,這是非常簡單,以及添加我的看法有一次我創建一個行我在主鍵先拿到0行。然後它不會再增加了,我又添加了一行,並且捕捉使我回到了我所處的相同視圖。似乎主鍵int id不是遞增的。
如何在這裏自動增加id(int類型)?我有點困惑,爲什麼MVC不處理這個,因爲它是主鍵類型int。它只會生成id = 0的第一行,這就是全部。
這聽起來不像MVC問題 - 您使用的是哪種數據庫技術? –
@central - 我編輯你的問題從asp.net-mvc到linq-to-sql的標籤,因爲你的問題和原因是在數據庫級別。順便說一句 - 你需要在表中將ID列標記爲IDENTITY(1,1) - 或者打開SSMS並在其中設置Identity標識。 –
目前正在開發中,我只使用VS2010中的服務器資源管理器來處理SQL Express。並感謝安德拉斯佐爾坦,這是一個LINQ到SQL標記。對標識標籤有意義,現在在VS中找出它。 -edit。在VisualStudio的2k10的Column Properties下很容易,'Identity Specification'(是Identity)更改爲'Yes' – central