C# 添加一个<;形式动作="&引用&燃气轮机;问题
net和我有一个问题,关于C# 添加一个<;形式动作="&引用&燃气轮机;问题,c#,asp.net,asp.net-mvc,C#,Asp.net,Asp.net Mvc,net和我有一个问题,关于 <form action=""> 是 我正在使用visual studio express for web 2013并遵循asp.net MVC框架 本任务的部分要求是:“方法签名必须具有制造商类型的参数。这是最佳实践。” 我正在查看示例网站的html表单,这是表单标签: <form action="/Manufacturers/addmanufacturer" method="post"> 该表单位于Manufacturers文
<form action="">
是
我正在使用visual studio express for web 2013并遵循asp.net MVC框架
本任务的部分要求是:“方法签名必须具有制造商类型的参数。这是最佳实践。”
我正在查看示例网站的html表单,这是表单标签:
<form action="/Manufacturers/addmanufacturer" method="post">
该表单位于Manufacturers文件夹的索引视图中,我还没有添加“addmanufacturer”,因为我不确定它需要什么。那是控制器吗?它只是一个代码文件吗?我应该为“addmanufacturer”实施什么项目?我注意到“addmanufacturer”后面没有任何类型的“.”
需要的另一部分是“方法返回值必须重定向到Index()方法”。是否可以进一步详细说明该部分?通常,在ASP.NET MVC中,您只需使用helper方法:
@using (Html.BeginForm()) {
// Form goodies go here
}
您将从链接中看到,您可以选择指定操作、控制器、路由值和html属性
编辑:要处理表单,您需要在控制器中创建一个动作(动作的名称和同一控制器中的名称相同,除非您另有指定)。如果使用POST方法,则可以使用[HttpPost]属性装饰action方法,以帮助进行路由
比如:
[HttpPost]
public ActionResult Index(FormCollection formCollection)
{
}
您也可以创建自动填充的强类型,称为视图模型。添加制造商通常是
制造商
控制器上的操作
。如何在控制器上定义索引
操作
现在我不太清楚引用的是什么:
方法返回值必须重定向到Index()方法
实际上是指,但我想象的(因为我没有样本或书)。我假设,一旦您填写表单并单击提交,它将发布到制造商控制器上的AddManufacturer
操作中
现在,一个操作通常会导致一个ActionResult
(不必,但通常会),因此我的理解是,当AddManufacturer
操作的处理逻辑完成时,它应该重定向回制造商控制器上的Index
操作。这通常(也不总是)称为重定向路由结果
,在本例中称为:
return RedirectToAction("Index");
该代码将指示浏览器重定向回制造商
控制器上的索引
操作
对于您的表单,(根据您的示例),另一个响应中列出的html帮助程序将发布到制造商
控制器上的索引
操作。但是,您希望发布到需要使用的AddManufacturers
操作
@using (Html.BeginForm("AddManufacturers", "Manufacturers"))
{
}
我希望这有助于澄清一些问题。me:ooooooooohh。我完全忘了我的教授今天在课堂上谈论html助手。谢谢你提醒我!还有一个问题:它会被视为一个新项目吗?控制器?请注意,上面列出的post操作的url将是/Manufacturers/
,而不是/Manufacturers/AddManufacturer
(如OP问题中所述),我认为,如果在BeginFormWhich参数中显式指定控制器和操作方法,则url中的其他附加参数将在表单提交时丢失?查询参数?是的,他们会的,但是岗位将去正确的控制器。如果愿意,您可以提供额外的RouteValue。