Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 3 Asp.net mvc创建新记录_Asp.net Mvc 3 - Fatal编程技术网

Asp.net mvc 3 Asp.net mvc创建新记录

Asp.net mvc 3 Asp.net mvc创建新记录,asp.net-mvc-3,Asp.net Mvc 3,我一直在努力增加一张新唱片 public ActionResult Create() { var dc = new ServicesDataContext(); ViewData["CustomerID"] = TempData["CustomerID"]; var a = dc.services.Select(arg => arg.ServiceID).ToList(); ViewData["ServiceID"] =

我一直在努力增加一张新唱片

public ActionResult Create()
    {


       var dc = new ServicesDataContext();
      ViewData["CustomerID"] = TempData["CustomerID"];
        var a = dc.services.Select(arg => arg.ServiceID).ToList();
        ViewData["ServiceID"] = new SelectList(a);
       var model = new Maping();

        return View(model);
    } 

    //
    // POST: /Customerservice/Create

    [AcceptVerbs(HttpVerbs.Post)]
    public ActionResult Create([Bind(Exclude ="CustomerServiceMappingID")]  Maping serviceToCreate)
    {


        if (!ModelState.IsValid)

                return View();

       var dc = new ServicesDataContext();
       dc.Mapings.InsertOnSubmit(serviceToCreate);

           dc.SubmitChanges();

           return RedirectToAction("Index", "Home");



    } 

现在的情况是tempdata具有正确的值,但在我提交更改时,customerID结果为null。因此,请帮助我解决这个问题。

我知道您将客户id从TempData复制到ViewData。但是,在请求结束后,ViewData的内容将不会保留。在您看来,您应该将客户id输入到一个输入中,例如,如果不应显示该id,则应将其放在隐藏字段中,以便在您的post操作中恢复该id。 如果使用强类型模型,则不应使用ViewData,而应在模型实例上设置客户id。然后在视图中,您可以使用Html.HiddenForm=>m.CustomerId来保留此id。 我希望我没有误解这个问题,不幸的是,在post操作中客户id为null的代码片段中,它并不是真正可见的