如何生成;行动“;<;表格>;ASP.NET核心中的标记生成器

如何生成;行动“;<;表格>;ASP.NET核心中的标记生成器,asp.net,asp.net-mvc,asp.net-core,asp.net-core-mvc,Asp.net,Asp.net Mvc,Asp.net Core,Asp.net Core Mvc,内置支持“asp动作”、“asp控制器”、“asp路由”等属性。他们工作得很好。但我不想为每个表单手动指定它们的值。是否可以根据当前页面URL自动生成“操作”属性 在查看FormTagHelper的实现之后,我看到它使用了IHtmlGenerator。当我在视图中手动调用IHtmlGenerator.GenerateForm(this.ViewContext,null,null,null,“post”,null)时,它工作得非常好。表单是使用有效的“操作”方法(包括查询字符串)自动生成的。但我能

内置支持“asp动作”、“asp控制器”、“asp路由”等属性。他们工作得很好。但我不想为每个表单手动指定它们的值。是否可以根据当前页面URL自动生成“操作”属性

在查看FormTagHelper的实现之后,我看到它使用了IHtmlGenerator。当我在视图中手动调用
IHtmlGenerator.GenerateForm(this.ViewContext,null,null,null,“post”,null)
时,它工作得非常好。表单是使用有效的“操作”方法(包括查询字符串)自动生成的。但我能用元素得到同样的结果吗

根据这个实现,我需要在FormTagBuilder中调用以下代码行。但“操作”和“控制器”设置为空

tagBuilder = Generator.GenerateForm(
                        ViewContext,
                        Action,
                        Controller,
                        Fragment,
                        routeValues,
                        method: null,
                        htmlAttributes: null);
但不知道怎么做


另外,如果我指定
asp route=“”
,那么它将生成“action”元素,但不包括当前页面的查询字符串。

看起来像
asp所有路由数据=“@null”
将起作用。它看起来很难看,但很管用


我希望能有一个更干净的解决方案

看起来像
asp all route data=“@null”
可以工作。它看起来很难看,但很管用


我希望能有一个更干净的解决方案

Wow-我不敢相信这是可行的,这就是我们必须使用的:(顺便说一句/FYI-如果添加asp-handler,查询字符串参数将丢失。确定-第三条注释(是否有此标记?)-您可以使用asp-handler=“”它将生成操作,但如果有查询字符串,它将再次替换查询字符串。否则,它只是一个简单的操作哇-我不相信这是有效的,这就是我们必须使用的:(顺便说一下/FYI-如果添加asp-handler,查询字符串参数将丢失。好的-第三条注释(是否有此标记?)-您可以使用asp-handler=“”它将生成操作,但如果有查询字符串,它将再次替换查询字符串。否则,它只是一个简单的操作