无法在mvc c#

时间:2018-02-19 20:31:54

标签: c# asp.net-mvc entity-framework insert

我有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类来检查用户值等验证(但我不认为这是我的问题)

0 个答案:

没有答案