我想添加簡單的登錄頁面到ASP.NET MVC應用程序。我實際上使用夏普拱模板項目。因此,我向LoginControl()中添加了3個方法Login(),Logout()和DoLogin(),Login()只返回View(「Login」)。ASP.NET MVC:提交呈現相同的頁面
現在,當我瀏覽到/用戶/登錄,我的aspx顯示有提交按鈕:
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" AutoEventWireup="true" Inherits="System.Web.Mvc.ViewPage" Title="Login" %>
<%@ Import Namespace="Orders.Web.Controllers" %>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContentPlaceHolder" runat="server">
<h2>Login</h2>
<% if (ViewContext.TempData["message"] != null){ %>
<p><%= ViewContext.TempData["message"]%></p>
<% } %>
<% using (Html.BeginForm<UsersController>(u => u.DoLogin()))
{ %>
<div><% =Html.SubmitButton("submit") %></div>
<% } %>
</asp:Content>
然而,當我點擊提交,請求再次做出登錄() - 我可以看到當我在那裏設置斷點時,即使在生成的HTML頁面表單中有action/Users/DoLogin,它也不會嘗試去UsersController.DoLogin()。當我在瀏覽器中手動輸入/ Users/DoLogin時,它被調用並且我的斷點被觸發。
我已經把我的頭撞了幾個小時了......我沒有看到這裏有什麼錯。
你可以發佈製作的HTML嗎?即,呈現頁面和「查看源代碼」 – 2009-07-14 11:26:04
非常感謝你;-)我_did_檢查後來的源,但是當我開始美化它後,我發現這個: