【发布时间】:2010-11-02 17:46:20
【问题描述】:
我都是,
在previous question 中,我询问了如何定义自定义路由来处理以下 URL:
http://www.example.com/User/Profile/Edit/{userProfileID}
我有一个 User 对象和一个 UserProfile 对象,但只有一个我希望能够用于两个对象上的操作的 UserController。我已经在 UserController 中有一个名为 Edit 的方法来处理对用户的编辑。但我还需要一种对 UserProfile 进行编辑的方法。我的路由问题的答案是以下路由:
routes.MapRoute(
"ProfileleRoute", // Route name
"User/Profile/{action}/{userProfileID}", // URL with parameters
new { controller = "User", action = "Index" } // Parameter defaults
);
但是考虑到自定义路由,我应该在哪里声明 UserProfile 的编辑操作,应该调用什么?似乎我无法在 UserController 中编写另一个名为 Edit 的方法,因为我已经有一个处理用户编辑的方法。
所以我觉得我最终需要两个编辑操作来处理以下路由:“用户/编辑”和“用户/配置文件/编辑”。我该如何解决这个问题?
非常感谢。
【问题讨论】:
-
你是说需要区分 User/Edit 和 User/Profile/Edit 吗?
-
是的,正是我所说的。编辑问题更清楚。
-
为什么需要绕过它?它不是很能代表你的需要吗?还是它们是一样的?
-
也许这回答了我的问题。我可以在 UserController 中只有两个操作方法,都称为 Edit,但需要两个不同的参数吗?我需要能够区分这两个操作,因为这些操作完全不同,具体取决于我是在编辑用户还是用户配置文件。
-
仅供参考:我就我们在这里讨论的内容发布了一个新的、更清晰的问题:stackoverflow.com/questions/4080897/…