【发布时间】:2014-02-09 19:27:43
【问题描述】:
我是 MVC 4 和剃须刀的新手,我的布局视图包含位于部分视图中的表单,
我的模特:
public class SubscribeModel
{
[Required(ErrorMessage = "Veuillez saisir votre adresse mail pour s'inscrire ...")]
[EmailAddress(ErrorMessage = "Vous devez saisir une adresse mail valide \"Ex: mail@domaine.com\"")]
public string SubEmail { get; set; }
}
布局视图呈现部分视图“_subscribe”,其中包含要注册到时事通讯的表单:
<body>
<div id="container">
<header>
<div id="banner">
@Html.Partial("~/Views/Soscom/_Subscribe.cshtml")
</div>
....
</body>
我的部分观点“_Subscribe”:
@model SoscomAppMvc.Models.SubscribeModel
@using (Html.BeginForm("Subscribe", "Soscom"))
{
@Html.TextBoxFor(m => m.SubEmail, new { placeholder = "Email pour s'inscrire à la newsletter", @class = "subscribebox", maxlength = "70" })
@Html.ValidationMessageFor(m => m.SubEmail)
<input class="subscribeBtn" type="submit" value="s'inscrire">
}
我使用 HttpGet Action 方法将模型发送到局部视图“_subscribe”:
[HttpGet]
public PartialViewResult Subscribe()
{
return PartialView("_Subscribe", new SubscribeModel());
}
但是当我使用下面的 HttpPost Action 时,我得到了一个没有布局页面的局部视图?
[HttpPost]
public ActionResult Subscribe(SubscribeModel subscribe)
{
if (!ModelState.IsValid)
return PartialView("_Subscribe", subscribe);
return View(subscribe);
}
问题:
有没有办法在当前视图中包含 Post 响应?
【问题讨论】:
-
我认为 templated helpers 可能会对您有所帮助。看看这个链接 - Templated Helpers。希望你能有所了解。
标签: asp.net-mvc asp.net-mvc-4 razor