我有一个博客,其中有一个侧面栏和一个局部视图,使用户能够注册我的电子邮件新闻源。我想要做的是在发布一些数据后将用户返回到它们来自的页面,并在窗体的部分视图中显示任何验证或返回消息。将数据返回到局部视图
问题是我的局部视图在新窗口中打开(没有布局)。我怎样才能解决这个问题,所以它返回到我的博客,并在侧边栏中返回数据?
这是我的视图:
@using Blog.Models.Entities
@model Subscriber
<header>
<h2>Subscribe</h2>
</header>
<p>Subscribe to my e-mail newsfeed.</p>
@using (Html.BeginForm("Form", "Subscription"))
{
<div class="editor-label">@Html.LabelFor(subscriber => subscriber.Email)</div>
<div class="editor-field ">@Html.EditorFor(subscriber => subscriber.Email)</div>
@Html.ValidationMessageFor(subscriber => subscriber.Email)
<input type="submit" value="Subscribe" />
<p>@ViewBag.Result</p>
}
和控制器的有关部件,它们处理数据:
public ActionResult Form()
{
return PartialView("_Form");
}
[HttpPost]
public ActionResult Form(Subscriber subscriber)
{
if (ModelState.IsValid)
{
Subscriber foundSubscriber = _repository.Subscribers.Where(s => s.Email.Equals(subscriber.Email)).FirstOrDefault();
if (foundSubscriber != null)
{
ModelState.AddModelError("Email", "This e-mail address has already been added.");
return PartialView("_Form", subscriber);
}
_repository.SaveSubscriber(subscriber);
ViewBag.Result = "Succesfully subscribed to the newsletter.";
return PartialView("_Form");
}
ModelState.AddModelError("Email", "Please provide a valid e-mail address.");
return PartialView("_Form", subscriber);
}
这个窗口在哪里开放?没有代码显示链接到你的部分。 –
我看到我犯了一个小错误,但是当我使用“返回PartialView”时,局部视图呈现出没有布局而不是在我的应用程序中。 –