2

Web API を DNN7 モジュールに統合しようとしています。

コントローラーとマッパー:

namespace MyControllers
{
    public class ExampleController : DnnApiController
        {
            #region "Web Methods"
            [DnnAuthorize()]
            [HttpGet()]
            public HttpResponseMessage HelloWorld()
            {
                try
                {
                    string helloWorld = "Hello World!";
                    return Request.CreateResponse(HttpStatusCode.OK, helloWorld);
                }
                catch (System.Exception ex)
                {
                    //Log to DotNetNuke and reply with Error
                    Exceptions.LogException(ex);
                    return Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.Message);
                }
            }


    public class RouteMapper : IServiceRouteMapper
        {
            public void RegisterRoutes(IMapRoute mapRouteManager)
            {
                mapRouteManager.MapHttpRoute("MyControllers", "default", "{controller}/{action}", new[] { "MyControllers" });
            }
        }
}

次に、URLからHelloWorldメソッドにアクセスしようとしています

https://localhost/DesktopModules/MyControllers/API/Example/HelloWorld

そして取得

HTTP エラー 404.0 - 見つかりません

不足している可能性のあるものについて何か提案はありますか?

4

1 に答える 1

1

解決しました!!! DesktopModules フォルダーが IIS のアプリケーションであり、WebApi をブロックしていることが判明しました。したがって、説明的でない場合

HTTP エラー 404.0 - 見つかりません

最初に IIS を確認してください。

于 2013-10-07T05:31:37.940 に答える