Добавить комментарий - CodeHelper

Добавить комментарий

Как извлечь из GET-запроса "addLine" параметр pid? Из RouteData "id" извлекается нормально, а "pid" не видит. Как можно решить этот вопрос? И рационально ли использование RouteData?

    [HttpGet]
    public ActionResult addLine(int id, int pid)
    {
        OrgForm newline = new OrgForm();
        TempData["curPer"] = pid; // для ссылки "Назад" в текущий период
        TempData["curFrm"] = id;  // для ссылки "Отмена"
        return PartialView("partAddInOrgForm", newline);
    }
    [HttpPost]
    public ActionResult addLine(OrgForm lineAdd)
    {

        int cfrm = Convert.ToInt32(RouteData.GetRequiredString("id"));
        Form frm = db.Forms.Where(f => f.formID == cfrm).First();
        lineAdd.Form = frm;
        //При извлечении второго параметра возникает ошибка
        //The RouteData must contain an item named 'pid' with a non-empty string value.
        int cper = Convert.ToInt32(RouteData.GetRequiredString("pid"));

        Period per = db.Periods.Where(p => p.perID == cper).First();
        lineAdd.Period= per;
        db.AddToOrgForms(lineAdd);
        db.SaveChanges();
        List<OrgForm> orgFrm = (from of in db.OrgForms where of.perID == cper && of.formID == cfrm orderby of.lineCod select of).ToList();
        return PartialView("partOrgForms", orgFrm);
    }

P.S. В ASP.NET и MVC опыта почти нету.

Внимание! Вы собираетесь отправить информацию от имени анонимного пользователя.
v1.7.123.556
© 2009—2010 CodeHelper FAQ | О сайте | Обратная связь | История изменений | Статьи
Creative Commons LicenseМатериалы сайта распространяются под лицензией Creative Commons Attribution-Share Alike 3.0 Unported.