【发布时间】:2017-05-24 22:49:44
【问题描述】:
我的控制器的 Create 方法绑定到一个 TestCase 对象:
public async Task<IActionResult> Create([Bind("Name, Description")] TestCase testCase)
并且执行模型绑定的 View 需要一个 ViewModel,它是这样指定的:
public class CreateTestCaseViewModel
{
public string ProjectName { get; set; }
public TestCase TestCase { get; set; }
}
我的视图代码(这只是一个输入名称和描述并提交的表单)是:
@model CreateTestCaseViewModel
@{
ViewData["Title"] = "Create";
}
<h2>Create Test Case</h2>
<form asp-action="Create">
<div class="form-horizontal">
<hr />
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<div class="form-group">
<label asp-for="TestCase.Name" class="col-md-2 control-label">
</label>
<div class="col-md-10">
<input asp-for="TestCase.Name" class="form-control" />
<span asp-validation-for="TestCase.Name" class="text-danger"></span>
</div>
</div>
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<div class="form-group">
<label asp-for="TestCase.Description" class="col-md-2 control-label"></label>
<div class="col-md-8">
@*<input asp-for="Description" class="form-control" />*@
<input asp-for="TestCase.Description" textarea class="form-control" id="Description" rows="5"/>
<span asp-validation-for="TestCase.Description" class="text-danger"></span>
</div>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input type="submit" value="Create" class="btn btn-default"/>
</div>
</div>
</div>
<div>
<a asp-action="Details">Back to List</a>
</div>
@section Scripts {
@{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
}
我的目标是让我的方法也能够将 ProjectName 作为参数:
public async Task<IActionResult> Create([Bind("Name, Description")] TestCase testCase, string projectName)
如何从视图中添加它?
【问题讨论】:
标签: c# asp.net .net asp.net-mvc asp.net-core