我正在为当地社区建立一个小型的craigslist / ebay类型的市场。
大部分网站都是简单的CRUD操作。我启用了个人用户帐户,当有人将项目发布到市场时,我想将他们当前的用户ID绑定到帖子。我已设置字段但如何自动附加登录用户的ID。
这是我的产品类
public class Product
{
public string Title { get; set; }
public decimal Price { get; set; }
public string Photo { get; set; }
public string Description { get; set; }
public bool Availability { get; set; }
public string Category { get; set; }
public string Id { get; set; }
public virtual ApplicationUser ApplicationUser { get; set; }
}
我在产品数据库表中有一个字段,它将保存ApplicationUser_Id
字符串值,但我不知道如何设置它。
这是我的创建产品控制器。我会在这里放入那个userID逻辑吗?
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "Id,Title,Price,Description,Availability,Category,Photo")] Product product)
{
if (ModelState.IsValid)
{
db.Products.Add(product);
db.SaveChanges();
return RedirectToAction("Index");
}
return View(product);
}
答案 0 :(得分:0)
是的,您需要在保存之前将用户添加到产品中。类似的东西:
if (ModelState.IsValid)
{
db.Products.Add(product);
db.Products.ApplicationUser = currentUser; //depending how you have your user defined
db.SaveChanges();
return RedirectToAction("Index");
}
我有一段时间没有使用Entity,所以我认为这应该是正确的