Я следующий cshtml на мой взгляд:Mvc Форма данные не размещать на Web API контроллера Asp.net
<div>
@(Html.Kendo().DropDownList()
.Name("Designation")
.DataValueField("Designation")
.DataTextField("Designation")
.SelectedIndex(0)
.BindTo((System.Collections.IEnumerable)ViewData["Designation"]))
@(Html.Kendo().DropDownList()
.Name("DeptId")
.DataValueField("DeptId")
.DataTextField("DeptName")
.SelectedIndex(0)
.BindTo((System.Collections.IEnumerable)ViewData["Department"]))
<input class="k-button" id="btnFilter" type="submit" value="Filter" />
</div>
Я хочу отправить значение как DropDownList на мой веб-ApiController. Я создал следующий jQuery ajax метод для вызова api. Но это не работает.
JQuery:
$(document).ready(function() {
$("#btnFilter").click(function() {
debugger;
var designation = $("#Designation").val();
var deptname = $("#DeptId").val();
$.ajax({
url: "http://localhost:8648/api/Employee" + deptname + designation,
type: "Post",
// data: JSON.stringify([designation, deptname]), //{ Name: name,
// Address: address, DOB: dob },
contentType: 'application/json; charset=utf-8',
success: function (data) { alert("posted") },
error: function() { alert('error'); }
});
});
});
Вот мой API контроллер Сообщение Метод:
public HttpResponseMessage PostEmployee(EmployeeViewModel newEmployee, String deptname, String designation)
{
//code
}
Как я могу отправить значение dropdownlost моему ApiController.
'API Controller' не могут принимать параметры, как это. Добавьте 'deptname' и' обозначение' как свойства вашего 'EmployeeViewModel' или создайте новую модель в целом. –