Название действия объявлено, но не найдено - PullRequest
0 голосов
/ 06 января 2020

Это одна часть моего WebApiConfig.cs:

config.MapHttpAttributeRoutes();

config.Routes.MapHttpRoute(
  name: "DefaultApi",
  routeTemplate: "{controller}/{action}"
);

Это часть моего контроллера BaseController.cs, где я объявил ActionName (редактировать: у меня есть другой класс CustomersController.cs, который наследует BaseController.cs):

[HttpGet]
[ActionName("Get")]
public List<T> Get() {
  return baseBL.Get();
}

[HttpGet]
[ActionName("Count")]
public int Count() {
  return baseBL.Count();
}

[HttpPost]
[ActionName("Insert")]
public int Insert(T entity) {
  return baseBL.Insert(entity);
}

[HttpPut]
[ActionName("Update")]
public int Update(T entity) {
  return baseBL.Update(entity);
}

[HttpDelete]
[ActionName("Delete")]
public int Delete(Guid entityID) {
  return baseBL.Delete(entityID);
}

Это часть запроса, в которой я вызвал метод DELETE:

try {
  $.ajax({
    url: me.FrmDetail.mainurl + "/Delete",
    method: "DELETE",
    data: JSON.stringify($(jtem).text()),
    contentType: 'application/json; charset = utf-8',
  });
} catch (e) {
  console.log(e);
}

Это ошибка, возвращаемая после его вызова:

Сообщение: "Не найден ресурс HTTP, соответствующий URI запроса" http://localhost: 51070 / Customers / Delete '.
MessageDetail: "Не найдено никаких действий для контроллер «Клиенты», который соответствует запросу. "

Я пробую несколько решений, которые я нашел в Stackoverflow, но он все еще содержит ошибки (например, изменение файла конфигурации IIS Express).

...