2

誰でも私のルート設定に何か問題があるのを見ることができますか? 次の方法でWeb APIコントローラーを呼び出そうとしています:

localhost/Attribution/api/Client

localhost/Attribution/api/Fund

ClientController と FundController という ApiController を拡張するコントローラーがいくつかあります。

これが私のルート構成です。私は常に HTTP 404 を受け取りますThe resource cannot be found

GlobalConfiguration.Configuration.Routes.MapRoute(
    "Default", // Route name
        "{controller}/{action}/{id}", // URL with parameters
        new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);


GlobalConfiguration.Configuration.Routes.MapHttpRoute(
    name: "test",
        routeTemplate: "api/{controller}/{id}/{action}",
        defaults: new
    {
            id = RouteParameter.Optional,
                action = RouteParameter.Optional
    });
4

1 に答える 1

0

アクションを含める必要があり、そのアクションはコントローラーにある必要があります。書かれているように、URL /api/Client はどのアクションを呼び出すべきかわかりません。代わりに、次を試してください。

GlobalConfiguration.Configuration.Routes.MapHttpRoute(
    name: "test",
        routeTemplate: "api/{controller}/{action}/{id}",
        defaults: new
    {
            action = "Index",
            id = RouteParameter.Optional
    });

次に、URL /api/Client は、コントローラー「Client」でアクション「Index」を呼び出す必要があります。

于 2013-01-04T01:24:12.683 に答える