3

请解释我如何在 ASP.NET MVC4 应用程序中创建更新面板。我找了很多博客...但找不到任何有用的方法。这是我的看法 在此处输入图像描述

如何在同一视图中分离这些操作?

4

2 回答 2

5

更新面板在 ASP.NET MVC 中并不真正存在。在人们真正意识到最好使用手写 jQuery ajax 进行部分页面更新之前,它曾经存在于 ASP.NET Web 表单开发世界中。

您可以使用 jQuery ajax 方法将表单数据发布到操作方法,并根据需要对页面进行部分页面更新。您也可以根据需要考虑使用局部视图(返回页面的一部分)。

在您的情况下,您可以为登录和注册创建 2 个部分视图,并将它们包含在您的主视图中,以使您的代码更具可重用性。

<h1>Login or Register</h1>
<div>
  @Html.Partial("Login")
</div>
<div>
 @Html.Partial("Register")
</div>
于 2013-04-06T12:24:52.063 回答
5

你的两个面板不允许用户在一个或另一个之间切换,所以我假设你有一个“介绍”视图,可以选择登录或注册。对?在这种情况下,实际上不需要使用 Javascript/Ajax 进行客户端面板切换。您的“介绍”视图可以将参数传递给控制器​​操作,定义它是否需要登录或注册视图。

例如:

// RouteConfig.cs
routes.MapRoute(
    name: null,
    url: "login-register/{action}",
    defaults: new { controller = "Authentication"},
    constraints: new { action = @"(SignIn|Register)" }
);

// AuthenticationController.cs
public ActionResult SignIn() 
{
    ...
    return View(); // Will return the Authentication\SignIn.cshtml view
}

public ActionResult Register()
{
    ...
    return View(); // Will return the Authentication\Register.cshtml view
}
于 2013-04-06T13:29:24.960 回答