MVC3 Razor Dynamic создание форм - PullRequest
1 голос
/ 19 апреля 2011

Сначала я хочу отметить, что я очень новичок в этой области ^ _ ^.

В любом случае

Я делаю проект с системой отчетов об оценках, и сейчас я работаю с cshtml для обновления пользовательской задачи.

Моя проблема

В настоящее время я пытаюсь добавить сообщение в форму, но оно вообще не работает.

На мой взгляд, у меня есть модель со списком пользовательских задач (и других данных). Эти пользовательские задачи содержат int id и оценку строки.

Я пытаюсь сделать так, чтобы пользовательская задача создавала форму со своей кнопкой отправки. Форма будет иметь скрытое поле для идентификатора и текстовое поле для оценки.

У меня проблема с @ Html.Hidden Сообщение об ошибке компилятора: CS1973: «System.Web.Mvc.HtmlHelper» не имеет применимого метода с именем «Скрытый», но, похоже, имеет метод расширения с этим именем. Методы расширения не могут быть динамически отправлены. Попробуйте привести динамические аргументы или вызвать метод расширения без синтаксиса метода расширения.

Я предполагаю, что вы не можете динамически использовать Html.Hidden (я использую цикл foreach над списком пользовательских задач).

У кого-нибудь есть идеи, как решить эту проблему? Я думал о создании частичных представлений, но не мог понять, можно ли передать им параметры. Или сделать кнопку отправки перенаправленной в представление контроллера, которое принимает 2 параметра?

У кого-нибудь есть примеры?

Спасибо за помощь!

Отправив код, который я пытался заставить работать.

foreach (var tskModel in tskgrpModel.usertasks)
        {
            @tskModel.name

            using (Html.BeginForm("Update", "Teacher", FormMethod.Post))
            {
                if(tskModel.isSet == true)
                {
                    @Html.Hidden("ut_id", tskModel.id )
                    @Html.TextBox("ut_grade",(string)@tskModel.grading);
                }
                else
                {
                    @Html.Hidden("ut_id", -1)
                    @Html.Hidden("ut_id", "NotSet")
                }


                
            }

        }

1 Ответ

7 голосов
/ 19 апреля 2011

Является ли taskModel.id динамической переменной?

если это так, измените строку

@Html.Hidden("ut_id", tskModel.id )

до

@Html.Hidden("ut_id", (int) tskModel.id )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...