ASP.net MVC4 / WebApiプロジェクトで次の(および同様の)URLを機能させようとしています。
http://127.0.0.1:81/api/nav/SpotiFire/SpotiFire.dll
このURLの原因となるルートは次のようになります。
config.Routes.MapHttpRoute(
name: "Nav",
routeTemplate: "api/nav/{project}/{assembly}/{namespace}/{type}/{member}",
defaults: new { controller = "Nav", assembly = RouteParameter.Optional, @namespace = RouteParameter.Optional, type = RouteParameter.Optional, member = RouteParameter.Optional }
);
を削除すれば問題なく動作します。ファイル名に、またはURLの後ろにスラッシュを追加した場合、これは-methodsなどを使用できないことも意味しますUrl.Route
。取得するエラーは一般的な404エラーです(下の画像)。
<httpRuntime targetFramework="4.5" relaxedUrlToFileSystemMapping="true" />
web.configに追加してみましたが、追加も試みました
<compilation debug="true" targetFramework="4.5">
<buildProviders>
<remove extension=".dll"/>
<remove extension=".exe"/>
</buildProviders>
</compilation>
そして、それはどれもうまくいかないようです。だから私の質問は、基本的に、このURLを機能させ、正しくマップするにはどうすればよいですか?