簡體   English   中英

使用一個html.editorfor填寫兩個模型字段

[英]Using one html.editorfor to fill in two model fields

我試圖只使用1 html.editorfor來在我的每個模型中填寫兩個模型字段。

我希望將此editorfor的值也插入到我的Clientes0013.Client0013中

 <div class="editor-field">
            @Html.EditorFor(model => model.CanaClie0012.Client00130012)
            @Html.ValidationMessageFor(model => model.CanaClie0012.Client00130012)
        </div>

並將其也插入到Clientes0013.F1Pais00200013中

<div class="editor-field">
                @Html.EditorFor(model => model.CanaClie0012.F1Pais00200012)
                @Html.ValidationMessageFor(model => model.CanaClie0012.F1Pais00200012)
            </div>

請告訴我什么是正確的方法。

我的表格模型:

public partial class CanaClie0012
    {
        public string Client00130012 { get; set; }
        public string F1Pais00200012 { get; set; }
        public string F1Cana02530012 { get; set; }
        public string Direcc0012 { get; set; }
        public Nullable<System.DateTime> TmStmp0012 { get; set; }
    }

public partial class Clientes0013
    {
        public string Client0013 { get; set; }
        public string Nombre0013 { get; set; }
        public string F1Pais00200013 { get; set; }
    }

結合這兩個表的我的自定義模型是:

public class ClientModel
{
  public CanaClie0012 CanaClie0012 { get; set; }
  public Clientes0013 Clientes0013 { get; set; }
}

我的控制器:

[HttpPost]
        public ActionResult ClientCreate(CanaClie0012 canaclie0012, Clientes0013 clientes0013)
        {
            ClientModel vm = new ClientModel();
            if (ModelState.IsValid)
            {
                db.CanaClie0012.Add(canaclie0012);
                db.Clientes0013.Add(clientes0013);
                db.SaveChanges();
                return RedirectToAction("Index");
            }

            return View(vm);
        }

我的觀點:

@model MvcApplication1.Models.ClientModel

@{
    ViewBag.Title = "ClientCreate";
}

<h2>ClientCreate</h2>

<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>

@using (Html.BeginForm()) {
    @Html.ValidationSummary(true)
    <fieldset>
        <legend>ClientModel</legend>
        <div class="editor-label">
            Client Name
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.CanaClie0012.Client00130012)
            @Html.ValidationMessageFor(model => model.CanaClie0012.Client00130012)
        </div>
        <div class="editor-label">
            Pais
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.CanaClie0012.F1Pais00200012)
            @Html.ValidationMessageFor(model => model.CanaClie0012.F1Pais00200012)
        </div>
        <div class="editor-label">
            Address 
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.CanaClie0012.Direcc0012)
            @Html.ValidationMessageFor(model => model.CanaClie0012.Direcc0012)
        </div>
         <div class="editor-label">
            Contact Number 
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.Clientes0013.Nombre0013)
            @Html.ValidationMessageFor(model => model.Clientes0013.Nombre0013)
        </div>


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

<div>
    @Html.ActionLink("Back to List", "Index")
</div>

明白了..修改了我的控制器動作。

 [HttpPost]
        public ActionResult ClientCreate(CanaClie0012 canaclie0012, Clientes0013 clientes0013)
        {
            ClientModel vm = new ClientModel();
            if (ModelState.IsValid)
            {
                clientes0013.Client0013 = canaclie0012.Client00130012;
                clientes0013.F1Pais00200013 = canaclie0012.F1Pais00200012;
                db.CanaClie0012.Add(canaclie0012);
                db.Clientes0013.Add(clientes0013);
                db.SaveChanges();
                return RedirectToAction("Index");
            }

            return View(vm);
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM