私はこれについて多くのトピックを見てきましたが、残念ながら、それぞれのケース (またはそれらのほとんど) は異なるケースだと思います。特に私のコードを機能させることはできないため、特に私のケースについて専門家の意見が欲しいです。他のトピックのいくつかを読んだ後。
状況: MVC 4 アプリケーションと共に WebApi プロジェクトで作成した WebService メソッドに対して、jQuery で Ajax Request 呼び出しを使用しています。
私の WebService コントローラー クラスは、次のようにデフォルトのように見えます。
public class AdditionalInfoController : ApiController
{
//GET api/AdditionalInfo
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2" };
}
//GET api/AdditionalInfo/5
public string Get(int id)
{
return "value";
}
//PUT api/AdditionalInfo/5
public void Put(int id)
{
string test = "";
}
}
jQuery からの Ajax リクエストは次のようになります。
function GetAdditionalInfo(obj)
{
var request = jQuery.ajax({
url: "/api/AdditionalInfo/Get",
type: "GET",
data: { id: obj.id },
datatype: "json",
async: false,
beforeSend: function () {
},
complete: function () {
}
})
.done(function (a,b,c) {
alert("Additional info was retrieved successfully!");
})
.fail(function (a,b,c) {
alert("An error happened while trying to get the additional info!");
});
}
私の WebAPIConfig ファイルは次のようになります。
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
}
そして最後になりましたが、これは私の問題です: .fail で返されたデータ変数を参照すると、このエラー メッセージが表示され続け、次のように書かれています。
"{
"Message":"No HTTP resource was found that matches the request URI 'http://localhost:59096/api/AdditionalInfo/Get?id=1'.",
"MessageDetail":"No type was found that matches the controller named 'AdditionalInfo'."
}"
誰かができるだけ早く私を助けてくれれば、本当に感謝しています。前もって感謝します!
宜しくお願いします、
マッド