Asp.net mvc Html.BeginForm内部部分更改属性

Asp.net mvc Html.BeginForm内部部分更改属性,asp.net-mvc,asp.net-mvc-5,partial-views,asp.net-mvc-partialview,html.beginform,Asp.net Mvc,Asp.net Mvc 5,Partial Views,Asp.net Mvc Partialview,Html.beginform,在我的ASP.NETMVC(5.2)项目中,我有一个名为register.cshtml的页面。它不包括任何形式或任何东西,只是简单的div 在其中一个div中,我正在渲染一个部分: @Html.Partial(“~/Views/Users/\ux.cshtml”) 在\u x.cshtml中,我有一个表单: @using (Html.BeginForm("/users/x")) { ... } 当我进入我的注册页面时,我希望我的表格呈现为: 但是,我得到的是: 什么是length=2

在我的ASP.NETMVC(5.2)项目中,我有一个名为
register.cshtml
的页面。它不包括任何形式或任何东西,只是简单的div

在其中一个div中,我正在渲染一个部分:

@Html.Partial(“~/Views/Users/\ux.cshtml”)

\u x.cshtml
中,我有一个表单:

@using (Html.BeginForm("/users/x"))
{
   ...
}
当我进入我的注册页面时,我希望我的表格呈现为:

但是,我得到的是:

什么是
length=23
,为什么添加了
novalidate
属性,为什么发布到不正确的路径


为什么我的表单没有正确呈现?

如果您想发布到
userscocontroller
中名为
x
的方法,则需要

@using (Html.BeginForm("x", "users"))
{
    ....
}

请注意,您当前使用的接受
对象routeValues
,并且由于它是
字符串,因此该方法生成了
长度的路由值,因为这是
字符串的唯一属性(
/users/register
是因为生成主视图的方法)

如果您想发布到
userscocontroller
中名为
x
的方法,则需要

@using (Html.BeginForm("x", "users"))
{
    ....
}
请注意,您当前使用的接受
对象routeValues
,并且由于它是
字符串,因此该方法生成了
长度的路由值,因为这是
字符串的唯一属性(
/users/register
是因为生成主视图的方法)

来自您的代码

Html.BeginForm("/users/x")
我知道用户是您的控制器,而x是一种方法。所以你可以这样做-

@using (Html.BeginForm("x", "users", FormMethod.Post, new { id = "YourFormID"}))
{
}
从你的代码

Html.BeginForm("/users/x")
我知道用户是您的控制器,而x是一种方法。所以你可以这样做-

@using (Html.BeginForm("x", "users", FormMethod.Post, new { id = "YourFormID"}))
{
}
注意:这是因为在构造函数中传递了错误的参数

在你看来

 @Html.Partial("~/Views/Shared/_x.cshtml")
注意:这是因为在构造函数中传递了错误的参数

在你看来

 @Html.Partial("~/Views/Shared/_x.cshtml")

你在打电话。我想这不是你想要的。您应该在
BeginForm
中使用控制器/操作名称,而不是url。假设您有一个名为
userscocontroller
的控制器,其方法名为
x
,则需要使用(Html.BeginForm(“x”,“users”)){
哦,我怎么会犯这样一个简单的错误。是的,现在就更正了。你能把它作为你正在呼叫的@Stephenmueckey的答案发布吗?我想这不是你想要的。你应该在
BeginForm
中使用控制器/操作名称,而不是url。假设你有一个名为
usersController
的控制器,并且有一个名为
x
,则需要使用(Html.BeginForm(“x”,“users”))来
。){
噢,我怎么会犯这样一个简单的错误。是的,现在就更正了。你能不能把它作为一个答案发布@StephenMueckeSee也更新解释
长度
查询字符串值是的,我还意识到它将对象的所有属性序列化为查询字符串参数,这解释了神秘的长度=23:)参见更新解释
长度
查询字符串值是的,我还意识到它将对象的所有属性序列化为查询字符串参数,这解释了神秘的长度=23:)