【发布时间】:2009-07-14 10:25:23
【问题描述】:
我正在尝试向 ASP.NET MVC 应用程序添加简单的登录页面。我实际上使用 Sharp Arch 模板项目。因此,我在 UsersController 中添加了 3 个方法 Login()、Logout() 和 DoLogin(),其中 Login() 只是返回 View("Login");
现在,当我导航到 /Users/Login 时,我的 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>
但是,当我单击提交时,再次向 Login() 发出请求 - 我在那里设置断点时可以看到它,即使在生成的 HTML 页面表单中它也不会尝试转到 UsersController.DoLogin()有动作 /Users/DoLogin。当我在浏览器中手动输入 /Users/DoLogin 时,它会被调用并触发我的断点。
我已经头疼了几个小时了……我看不出这里有什么问题。
【问题讨论】:
-
你能发布生成的 HTML 吗?即,渲染页面和“查看源代码”
-
嗯,非常感谢 ;-) 我确实检查了当时的来源,但是当我开始美化它以发布时,我发现了这个:
标签: asp.net-mvc