gpt4 book ai didi

c# - T4MVC - 处理可选参数

转载 作者:行者123 更新时间:2023-11-30 15:08:20 25 4
gpt4 key购买 nike

我正在使用 .NET 3.5、MVC 2 和 T4MVC 2.6.42...

我有以下操作:

public virtual ActionResult Index(string id, int page = 1)

以及以下路线:

routes.MapRoute(
"Products", // Route name
"Products/{id}", // URL with parameters
new { controller = "Products", action = "Index", id = UrlParameter.Optional, page = UrlParameter.Optional }, // Parameter defaults
new string[] { "Web.Controllers" }
);

但是,当我尝试调用 MVC.Products.Index("anything") 时,我收到“No overload for method 'Index' takes '1' arguments”异常。然而,调用 MVC.Products.Index() 是有效的。

难道我不能省略“page”参数,因为它默认为“1”吗?

注意:我试过在路由中将页面参数默认为 1,但没有用。

注意 2: 还尝试了 [Optional] Attribute没有成功。

最佳答案

虽然您发现了错误的 C# 版本的问题,但为了将来引用,有一种方法可以做到这一点。你可以这样写:

MVC.Products.Index().AddRouteValue("id", "anything");

除了方法调用传入的内容之外,这还允许您为单个参数添加值。

关于c# - T4MVC - 处理可选参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5695931/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com