C# 从PartialView MVC3的父级访问值
我需要在编辑模式下保持学生的兴趣 这里有一个局部视图 两个列表框-一个用于当前兴趣,另一个用于可用(未添加到学生档案中) 每个兴趣点都有一个ajax操作链接。当我点击它时,它会增加学生当前的兴趣。 问题是--我需要发送来自家长视图(即不是部分视图)的学生id, 学生id在url中 或者--如何在部分视图中访问学生id //代码示例C# 从PartialView MVC3的父级访问值,c#,asp.net-mvc-3,C#,Asp.net Mvc 3,我需要在编辑模式下保持学生的兴趣 这里有一个局部视图 两个列表框-一个用于当前兴趣,另一个用于可用(未添加到学生档案中) 每个兴趣点都有一个ajax操作链接。当我点击它时,它会增加学生当前的兴趣。 问题是--我需要发送来自家长视图(即不是部分视图)的学生id, 学生id在url中 或者--如何在部分视图中访问学生id //代码示例 @model StdMan.Models.Student @{ ViewBag.Title = "Edit"; } <h2>Edit</
@model StdMan.Models.Student
@{
ViewBag.Title = "Edit";
}
<h2>Edit</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>
<script src="../../../../Scripts/jquery-1.5.1.min.js" type="text/javascript"></script>
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
<fieldset>
<legend>Project</legend>
<div class="editor-label">
@Html.LabelFor(model => model.StId)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.StId)
@Html.ValidationMessageFor(model => model.StId)
</div>
<div class="editor-label">
Intested In
</div>
<div class="editor-field" id="Interest">
@Html.Action("PartialAddInterest", "Interest")
</div>
</fieldset>
<p>
<input type="submit" value="Save" />
</p>
}
您可以将学生id传递给
PartialAddTool
子操作:
@Html.Action("PartialAddTool", "Interest", new { id = Model.StId })
现在控制器操作将具有学生id:
public ActionResult PartialAddTool(int stdId)
{
...
}
现在剩下的就是让
PartialAddTool
操作在传递给部分视图的视图模型上设置一些属性。目前,此部分视图似乎强类型为IEnumerable
,但您可以创建一个新的视图模型,该模型具有两个属性:学生id和兴趣集合。这样,部分视图将具有学生id,并且可以在生成最终传递到AddInterest
操作的链接时使用它。@Darin Dimitrov,感谢您的回复我添加了一些代码示例
@Html.Action("PartialAddTool", "Interest", new { id = Model.StId })
public ActionResult PartialAddTool(int stdId)
{
...
}