У меня проблема с контроллером API.
public class IssuesController : ApiController
{
private ApplicationDbContext db = new ApplicationDbContext();
[HttpGet]
public IHttpActionResult GetNotes(int id)
{
Issue issue = db.Issues.Include("Notes").SingleOrDefault(m => m.Id == id);
if (issue == null)
return BadRequest();
return Ok(issue);
}
//POST add DeveloperId to assign developer to issue
[HttpPost]
public IHttpActionResult AssignDeveloper(int IssueId, string DeveloperId)
{
if (IssueId == null || DeveloperId == null)
return BadRequest();
var issue = db.Issues.Find(IssueId);
if (issue == null)
return BadRequest();
var projDev = db.ProjectDevelopers.Where(model => model.ProjectId == issue.ProjectId && model.DeveloperId == DeveloperId);
if (projDev == null)
return BadRequest();
issue.DeveloperAssignedId = DeveloperId;
issue.DateUpdated = DateTime.Today;
db.SaveChanges();
return Ok();
}
}
Вот сообщение на стороне клиента
var formData = {
IssueId: $("#Id").val(),
DeveloperId: $("#assignDeveloperSelect").val()
};
$.post("/api/issues/", formData, function () {
$("#assignDeveloperSection").html($("#assignDeveloperSelect").find("option:selected").text());
});
возвращает неверный тип 405 неверного типа метода. Изменение URL-адреса на / api / Issues / assigndeveloper возвращает 404 с помощью GET в / api / Issues / assigndeveloper / 16 возвращает get из GetNotes (16) Я уже использую метод GetNotes с $.get("/api/projectdevelopers/" + projectId, function (data, status)
Я бросил работу и переместил этот метод в контроллер проблем не-API и только что возвратил JSON ActionResult, но я хотел бы перенести его обратно на контроллер API.