0
我正在開發一個MVC應用程序,並試圖與我擁有的Web API控制器建立AJAX連接。唯一可能出現的錯誤是「Unidentified」。另外在我的API控制器刪除行動,我拋出一個隨機異常,所以我可以檢測,如果我成功進入該方法,但我沒有。Ajax調用ASP.NET MVC Web API
UPDATE:
好吧看來我幾乎忘了我的網址「removeFile」路線Ajax調用,但問題是,如果我添加一個「數據」屬性Ajax調用在我的序列化傳遞表單控件停止正常工作。
數據:$( 「#frmManipulate」)序列化()
Ajax調用:
$("#frmManipulate").submit(function() {
if (confirm("Are you sure you want to delete all selected files?")) {
if ($(this).data('clicked').is('[name="delete"]')) {
$.ajax({
type: "DELETE",
url: "api/file/removeFile",
data: $("#frmManipulate").serialize()
}).complete(function ($data) {
alert("done");
});
}
return false;
});
的Web API控制器:
[RoutePrefix("api/file")]
public class ManipulateController : ApiController
{
// GET api/<controller>
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2" };
}
// GET api/<controller>/5
public string Get(int id)
{
return "value";
}
// POST api/<controller>
public void Post([FromBody]string value)
{
}
// PUT api/<controller>/5
public void Put(int id, [FromBody]string value)
{
}
[Route("removeFile")]
// DELETE api/<controller>/5
public void DeleteFile(string[] url)
{
foreach (var file in url)
{
throw new MarshalDirectiveException();
}
}
}
我試過了,但沒有奏效。無論哪種方式,我想通過我的表單控件。 – user3006019
嘗試向控制器方法添加[HttpDelete]屬性,然後嘗試執行刪除請求 –
DELETE不能有消息正文。 – Badri