我有2个动作..一个用户,我可以向User表添加数据但是对于Order表我的代码没有工作并且遇到了错误
这是我的用户代码(控制器中的操作)
[HttpPost]
public ActionResult Register(User user)
{
UserRepository blUser = new UserRepository();
if (ModelState.IsValid)
{
if (blUser.Add(user))
{
return Json(new JsonData() { Success = true });
}
else
{
return Json(new JsonData() { Success = false });
};
}
else
{
return Json(new JsonData() { Success = false });
}
}
和(UserRepository):
public class UserRepository : IDisposable
{
private HairCut.Models.MVCHairDresserDBEntities db = null;
public UserRepository()
{
db = new HairCut.Models.MVCHairDresserDBEntities();
}
public bool Add(HairCut.Models.User entity, bool autoSave = true)
{
try
{
db.Users.Add(entity);
if (autoSave)
return Convert.ToBoolean(db.SaveChanges());
else
return false;
}
catch
{
return false;
}
}
我只是将User word更改为Order但是当尝试将数据插入表时我得到了catch并返回false
订单代码:
[HttpPost]
public ActionResult Reserve(int select, int user,int hdId)
{
Order order = new Order();
order.HairDresserId =hdId;
order.UserId = user;
order.timeCome = (select).ToString();
order.timeNow = DateTime.Now.ToString("dddh");
order.confirm = true;
OrderRepository blOrder = new OrderRepository();
if (blOrder.Add(order))
{
return Json(new JsonData() { Success = true });
}
else
{
return Json(new JsonData() { Success = false });
}
}
OrderRepository与UserRepository类似。那么为什么不能插入?我哪里错了?
每次使用breackpoint并调试我的代码时会遇到代码return Convert.ToBoolean(db.SaveChanges());
OrderRepository有2个外键。当我检查实体快速监视时,帮助者向我显示2个额外字段(User和HairDresser具有空值)..也许我需要设置这些值?
或者可能需要创建MetaData类来检查用户值等验证(但我不认为这是我的问题)