何らかの理由で、db.SaveChanges();
命令で次のエラーが発生します。
Cannot insert the value NULL into column 'UserId', table 'XXXXXXXXX_Dev.dbo.Portfolios'; column does not allow nulls. INSERT fails.
The statement has been terminated.
コントローラーコード:
[HttpPost]
[Authorize]
public ActionResult Create(Portfolio portfolio)
{
if (ModelState.IsValid)
{
portfolio.UserId = (Guid)Membership.GetUser().ProviderUserKey;
db.AddToPortfolios(portfolio);
db.SaveChanges();
}
return View("MyPortfolios");
}
デバッガーをステップ実行し、UserID が設定されていることを確認しました。
アップデート:
に変更db.AddToPortfolios(portfolio);
してみましdb.Portfolios.AddObject(portfolio);
たが、まだ同じ問題があります。
Portfolios
メソッドObjectSet
を使用する必要がありますか?Attach()