私はWPF C#アプリケーションで動作するWeb APIを持っています。私はそれを実装するためにOwinを使いました。接頭辞/api
を使用してリクエストを送信すると、期待どおりに動作します。C#Web APIルートプレフィックス
http://localhost:8080/api/test/config?no=7
ただし、/ api接頭辞を削除する必要があります。下のサンプルコードを試したときに、私が下の要求を試してもうまくいきません。
http://localhost:8080/test/config?no=7
リクエストからapi単語を削除することはできますか?ここで
は私のコードです:
WebApp.Start<Startup>(url: "http://*:8080/");
class Startup
{
Type ValuesControllerType = typeof(TestController);
public void Configuration(IAppBuilder Builder)
{
var Instance = new HttpConfiguration();
Instance.MapHttpAttributeRoutes();
Instance.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "{controller}/{action}/{request}",
defaults: new { request = RouteParameter.Optional }
);
Builder.UseWebApi(Instance);
}
}
[RoutePrefix("test")]
public class TestController : ApiController
{
[HttpGet]
[Route("config")]
public string Config(string No)
{
try
{
return No;
}
catch (Exception e)
{
return string.Empty;
}
}
}
私はC# web api route for a webserviceで答えを試みたが、うまくいきませんでした。
私は、次の取得エラー:
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}"
);
が
ときに '[RoutePrefix( "テスト")]あなたは'エラーエン示してもらえますか? – Marusyk
質問を編集しました。サービスを利用できないというエラーが表示されます。 – Demir