передача значений из представления в контроллер N, а затем в другое представление - PullRequest
0 голосов
/ 19 ноября 2010
Клиент:
<p></p>
<p></p>
<div> <% foreach (var item in Model)
         { %>
         You are viewing Users of Customer: <%:item.Customer %>
         <%break; %>
         <%} %></div>
    <p></p>
    <% Html.RenderPartial("EditUsers", Model); %>

<p>
    <%: Html.ActionLink("Create New", "Create", "Profile", null, null)%>
</p>

Теперь я должен передать <%: item.Customer%> через%: Html.ActionLink («Создать новый», «Создать», «Профиль», ноль, ноль)%> иэто должно быть отображено в представлении Создать здесь, если контроллер не предоставит представление Создать также

Контроллер: public ActionResult Create () {return View ();}

    [HttpPost]
    public ActionResult Create(string UserName, string Password, string FirstName, string LastName,
        string MiddleInitial,  string Email,string Telephone,  bool IsAdmin, bool IsSubAdmin)
    {
        UserDAL userDALObject = new UserDAL();
        tblUser newUser = new tblUser();

        newUser.Customer = customerNumber; 
        newUser.UserName = UserName;
        newUser.Password = Password;
        newUser.FirstName = FirstName;
        newUser.LastName = LastName;
        newUser.MiddleInitial = MiddleInitial;
        newUser.Email = Email;
        newUser.Telephone = Telephone; 

        newUser.IsAdmin = IsAdmin;
        newUser.IsSubAdmin = IsSubAdmin;

        userDALObject.AddUserDetails(newUser);
        TempData["UserCreationMsg"] = string.Format("User named :{0}, is created",UserName);
        return View();
    }
    public ActionResult EditUser(string id)
    {
        UserDAL userDALObject = new UserDAL();
        tblUser userDetails = userDALObject.GetUser(Int32.Parse(id));
        TempData["EditUserId"] = id;
        return View(userDetails);
    }

представление «Создать» <% if (TempData ["UserCreationMsg"]! = Null)%> <% {%> <%: TempData ["UserCreationMsg"]. ToString ()%> <%}%>

<% using (Html.BeginForm()) {%>
    <%: Html.ValidationSummary(true) %>

    <fieldset>          


        <div class="editor-label">
            <%: Html.LabelFor(model => model.UserName) %>
        </div>
        <div class="editor-field">
            <%: Html.TextBox("UserName") %>
            <%: Html.ValidationMessageFor(model => model.UserName) %>
        </div>

        <div class="editor-label">
            <%: Html.LabelFor(model => model.Password) %>
        </div>
        <div class="editor-field">
            <%: Html.Password("Password") %>
            <%: Html.ValidationMessageFor(model => model.Password) %>
        </div>

        <div class="editor-label">
            <%: Html.LabelFor(model => model.FirstName) %>
        </div>
        <div class="editor-field">
            <%: Html.TextBox("FirstName") %>
            <%: Html.ValidationMessageFor(model => model.FirstName) %>
        </div>

        <div class="editor-label">
            <%: Html.LabelFor(model => model.LastName) %>
        </div>
        <div class="editor-field">
            <%: Html.TextBox("LastName") %>
            <%: Html.ValidationMessageFor(model => model.LastName) %>
        </div>

        <div class="editor-label">
            <%: Html.LabelFor(model => model.MiddleInitial) %>
        </div>
        <div class="editor-field">
            <%: Html.TextBox("MiddleInitial") %>
            <%: Html.ValidationMessageFor(model => model.MiddleInitial) %>
        </div>

        <div class="editor-label">
            <%: Html.LabelFor(model => model.Email) %>
        </div>
        <div class="editor-field">
            <%: Html.TextBox("Email") %>
            <%: Html.ValidationMessageFor(model => model.Email) %>
        </div>

        <div class="editor-label">
            <%: Html.LabelFor(model => model.Telephone) %>
        </div>
        <div class="editor-field">
            <%: Html.TextBox("Telephone") %>
            <%: Html.ValidationMessageFor(model => model.Telephone) %>
        </div>           


        <div class="editor-label">
            <%: Html.LabelFor(model => model.IsAdmin) %>
        </div>
        <div class="editor-field">
            <%: Html.CheckBox("IsAdmin") %>
            <%: Html.ValidationMessageFor(model => model.IsAdmin) %>
        </div>

        <div class="editor-label">
            <%: Html.LabelFor(model => model.IsSubAdmin) %>
        </div>
        <div class="editor-field">
            <%: Html.CheckBox("IsSubAdmin") %>
            <%: Html.ValidationMessageFor(model => model.IsSubAdmin) %>
        </div>

        <p>
            <input type="submit" value="Create" />
        </p>
    </fieldset>

1 Ответ

1 голос
/ 19 ноября 2010

В чем конкретно ваша проблема?

С другой стороны, вы должны использовать привязку модели, чтобы передать объект person в метод действия CreateView, а не передавать каждое свойство отдельно. Это уменьшит много вашего кода. Поиск модели привязки для более подробной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...