Переглянути джерело

Subcollection Partial möglich

Arne Diekmann 5 роки тому
батько
коміт
1f94009ebd

+ 2 - 2
GreenTree.Strohrmann.ERP.Web/Controllers/CraftController.cs

@@ -89,9 +89,9 @@ namespace GreenTree.Strohrmann.ERP.Web.Controllers
         }
 
         // GET: CraftController/AddCraftEmployeePartial
-        public ActionResult AddCraftEmployeePartial(CraftModel craftModel)
+        public ActionResult AddCraftEmployeePartial(CraftEmployeeModel craftEmployeeModel)
         {
-            return PartialView("~/Views/Craft/_CraftEmployeePartial.cshtml", craftModel);
+            return PartialView("~/Views/Craft/_CraftEmployeePartial.cshtml", craftEmployeeModel);
         }
 
         // GET: CraftController/Edit/5

+ 11 - 1
GreenTree.Strohrmann.ERP.Web/Views/Craft/Create.cshtml

@@ -60,7 +60,17 @@
                 <a class="float-right" href="#" onclick="addCraftEmployeePartial()">Hinzufügen</a>
             </div>
             <div id="craftemployeelist" class="card-body">
-                <partial name="_CraftEmployeePartial" />
+                @if (Model != null && Model.CraftEmployees != null)
+				{
+                    @for (int i = 0; i < Model.CraftEmployees.Count; i++)
+				    {
+                        @await Html.PartialAsync("_CraftEmployeePartial", Model.CraftEmployees[i])
+				    }
+				}
+				else
+				{
+                    @await Html.PartialAsync("_CraftEmployeePartial", new GreenTree.Strohrmann.ERP.Web.Models.Business.CraftEmployeeModel())
+				}
             </div>
         </div>
         @*<div class="card card-maxw bg-light">

+ 8 - 12
GreenTree.Strohrmann.ERP.Web/Views/Craft/_CraftEmployeePartial.cshtml

@@ -1,23 +1,19 @@
-@model dynamic
-
-@{ 
-	var index = Convert.ToInt32(ViewData["Index"]);
-}
+@model GreenTree.Strohrmann.ERP.Web.Models.Business.CraftEmployeeModel
 
 <div class="row">
     <div class="form-group col-md-4">
         <label asp-for="EmployeeId" class="control-label"></label>
-        <input asp-for="EmployeeId" name="CraftEmployees" class="form-control" />
+        <input asp-for="EmployeeId" name="CraftEmployees[@Model.Index].EmployeeId" class="form-control" />
         <span asp-validation-for="EmployeeId" class="text-danger"></span>
     </div>
     <div class="form-group col-md-4">
-        <label asp-for="CraftEmployees[index].Amount" class="control-label"></label>
-        <input asp-for="CraftEmployees[index].Amount" class="form-control" />
-        <span asp-validation-for="CraftEmployees[index].Amount" class="text-danger"></span>
+        <label asp-for="Amount" class="control-label"></label>
+        <input asp-for="Amount" name="CraftEmployees[@Model.Index].Amount" class="form-control" />
+        <span asp-validation-for="Amount" class="text-danger"></span>
     </div>
     <div class="form-group col-md-4">
-        <label asp-for="CraftEmployees[index].Value" class="control-label"></label>
-        <input asp-for="CraftEmployees[index].Value" class="form-control" />
-        <span asp-validation-for="CraftEmployees[index].Value" class="text-danger"></span>
+        <label asp-for="Value" class="control-label"></label>
+        <input asp-for="Value" name="CraftEmployees[@Model.Index].Value" class="form-control" />
+        <span asp-validation-for="Value" class="text-danger"></span>
     </div>
 </div>