C# MVC 404错误-仍然是新的

C# MVC 404错误-仍然是新的,c#,asp.net-mvc,forms,http-status-code-404,C#,Asp.net Mvc,Forms,Http Status Code 404,所以,我在提交当前的MVC项目时遇到了404错误。我是MVC新手,所以我可能会做一些特别愚蠢的事情。这是相关的代码 <%@ Page Title="Pies" Language="C#" Inherits="System.Web.Mvc.ViewPage" MasterPageFile="~/site.master" %> <asp:Content ContentPlaceHolderID="MainContent" runat="server"> <h1>O

所以,我在提交当前的MVC项目时遇到了404错误。我是MVC新手,所以我可能会做一些特别愚蠢的事情。这是相关的代码

<%@ Page Title="Pies" Language="C#" Inherits="System.Web.Mvc.ViewPage" MasterPageFile="~/site.master" %>
<asp:Content ContentPlaceHolderID="MainContent" runat="server">
<h1>Oh Boy Pies</h1>
<p>Tell us about the pies!</p>
<form action="Process" method="post">
    <div class="inputdiv">
        <span class="spaced">Name:</span>
        <%= Html.TextBox("name") %>
        <%= Html.ValidationMessage("name", "*") %>
    </div>
</form>
另外,人们能否解释一下如何使用TextBoxFor实现这一点?我见过这样的例子,但我一点也不懂

编辑:这是母版页

 <%@ Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage" %>
 <!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head runat="server">
    <asp:ContentPlaceHolder ID="head" runat="server">
    </asp:ContentPlaceHolder>
 </head>
 <body>
    <asp:ContentPlaceHolder ID="MainContent" runat="server">
    </asp:ContentPlaceHolder>
 </body>
 </html>

它应该是
返回重定向到操作(“索引”)
。MVC不使用页面,而是依赖
Controller
来路由请求

控制器返回视图,或重定向到另一个控制器,该控制器渲染视图

编辑 是的,动作方法不正确(刚才看到)


姓名:

为什么要将ASP.NET Webforms与MVC混合使用?
Response.Write()
Response.End()
可能会导致问题。您想在
过程中完成什么操作?切换到MVC4,获取一本关于它的好书,并开始使用最新的Razor语法。问题可能是你是一个经验丰富的Webforms开发人员,试图学习MVC(1或2,只是可能3)。@Aniket我可能弄错了,但我相信使用原始(pre Razor)视图引擎是正确的MVC语法。实际上,我根本不是Webforms开发人员。从未使用过,一次也没有。我是一名PHP开发人员,更习惯于分别构建HTML和处理页面等。我习惯于用真实的HTML编写所有输入,而不是让外力为我构建它们=/。我被迫学习C#MVC,而这正是使用x.x的例子。@LaniAlden,不客气:)是的,获取MVC4并开始使用Razor。Webforms视图引擎非常糟糕。我也不是一个粉丝,所以我会的。x.x对我来说都是一样的。然后,我喜欢编写自己的HTML,并将这些框非常分开。HTML帮助程序将帮助您继续,并减少此类错误。作为士气的助推器,堆栈溢出是用MVC4编写的,并使用Razor引擎呈现web应用程序。:-)@拉尼尔登
 <%@ Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage" %>
 <!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head runat="server">
    <asp:ContentPlaceHolder ID="head" runat="server">
    </asp:ContentPlaceHolder>
 </head>
 <body>
    <asp:ContentPlaceHolder ID="MainContent" runat="server">
    </asp:ContentPlaceHolder>
 </body>
 </html>
<form action="/Home/Process" method="post">
    <div class="inputdiv">
        <span class="spaced">Name:</span>
        <%= Html.TextBox("name") %>
        <%= Html.ValidationMessage("name", "*") %>
    </div>
</form>