2012-09-12 65 views
0

我正在使用MVC 3應用程序和使用web api控制器。在MVC3中調用MVC4 web api控制器

我想調用帶參數的方法。

但是當我打電話,我得到內部服務器錯誤的方法(500) 我的Global.asax是:

routes.MapHttpRoute(
    name: "PostMethod2", 
    routeTemplate: "api/mycontroller/{a}/{b}", 
); 

我應該路由任何代碼添加到Global.asax中的Application_Start到參數方法?

+0

請顯示來電者和被調用者代碼。 –

+0

你能查看錯誤是什麼嗎? –

+0

調用者只是url:http:// localhost/api/contr/getcall/2和被調用者是 – user1400915

回答

1

你的路由配置似乎不合法的,正確的人會像下面

routes.MapHttpRoute(
    name: "PostMethod2", 
    routeTemplate: "api/{controller}/{action}/{a}", 
); 

注意,「{}控制器」和「{}行動」不能是隨機的。 MVC使用它來分別映射到你的控制器和動作(方法)。 {a}將映射到您的參數「int a」。 MVC按慣例使用映射。

0
RouteTable.Routes.MapPageRoute("Profile", "{Link}.{Id}.aspx", "~/Profile.aspx"); 

示例很有幫助! 鏈接和Id是參數