我有我使用MVC3和自定義SQL數據庫有3個表創建的應用程序: mm_Table1
,mm_Table2
,mm_Jobs
成功地與aspnet_Membership表擴展自定義的SQL數據表
我建了MVC應用程序與JobsController
和有各Views
文件夾Create.cshtml
,Delete.cshtml
,Details.cshtml
,Edit.cshtml
和Index.cshtml
我想mm_Profile
與用戶相關聯。
的ASPNET_MEMBERSHIP
表集成到我的自定義數據庫之後,我加入uniqueidentifier
類型的UserId
列mm_Jobs
,並建立了適當的外鍵關係aspnet_Users
表(FK_Jobs_aspnet_Users
)
我這樣做了,現在當我填寫我的工作形式(位於Jobs -> Create.cshtml
),然後按提交按鈕,我得到了以下錯誤:
Cannot insert the value NULL into column 'UserId', table 'MovinMyStuff.dbo.Moves'; column does not allow nulls. INSERT fails. The statement has been terminated
的代碼在我JobsController在我Create()
方法的行:
Line:52 db.SaveChanges();
如何更新我的Create()
保存更改並在用戶與任務關聯起來,從而推動UserId
到UserId
列在表Jobs
?完整的創建方法如下:
[HttpPost]
public ActionResult Create(Job job)
{
if (ModelState.IsValid)
{
db.Moves.Add(job);
db.SaveChanges();
return RedirectToAction("Index");
}
return View(job);
}
您提供的信息有點令人困惑:1. sql錯誤是抱怨Moves表上的UserId列,但是您嘗試插入作業? 2.什麼是mm_Table1和mm_Table2? –