首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >ASP.NET MVC:无法在控制器中获取字符串参数

ASP.NET MVC:无法在控制器中获取字符串参数
EN

Stack Overflow用户
提问于 2009-08-13 13:10:36
回答 2查看 13.5K关注 0票数 20

我的控制器中有以下名为UserController的代码

代码语言:javascript
复制
public ActionResult Details(string name)
{
    MyModelDataContext db = new MyModelDataContext();
    Product user = db.Products.Single(t => t.Name == name);
    return View(user);
}

我希望当我直接浏览到http://localhost:port/User/Details/SomeName时,我会使用包含"SomeName“的"name”参数来访问这个函数。我确实得到了这个函数,但是"name“是空的。我没有更改项目的任何默认设置。

我做错了什么?

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-08-13 13:20:42

如果您还没有更改Global.asax.cs中的路由定义,那么我想它仍然使用参数的默认"id“名称。将其更改为"name“或将操作参数重命名为"id”。

票数 24
EN

Stack Overflow用户

发布于 2009-08-13 13:22:55

您是否在global.asax中定义了包含'name‘参数的路由?

代码语言:javascript
复制
routes.MapRoute(  
"Default",                                       // Route name  
"{controller}/{action}/{name}",                    // URL w/ params  
new { controller="Home", action="Index",name="" }  // Param defaults  
);  

请参阅NerdDinner教程中的示例:http://nerddinnerbook.s3.amazonaws.com/Part4.htm

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1271859

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档