. NET Контроллер API возвращает 405 для AJAX POST - PullRequest
0 голосов
/ 24 марта 2020

У меня проблема с контроллером 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.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...