webapi中的错误 - 无法从'System.Web.Mvc.JsonRequestBehavior'转换为'Newtonsoft.Json.JsonSerializerSettings'

时间:2017-05-26 14:53:17

标签: c# json asp.net-mvc asp.net-mvc-4 asp.net-web-api

webapi中的

jsonrequestbehaviour无效,显示无法将'System.Web.Mvc.JsonRequestBehavior'转换为'Newtonsoft.Json.JsonSerializerSettings'

 public ActionResult AddTemprature(string EmployeeName, int EmployeeId, string Location)
        {
            try
            {

                using (EmployeeDBEntities DB = new EmployeeDBEntities())
                {

                    WebApi.Employee emp = new WebApi.Employee();
                    // EmployeeModel Emp = new EmployeeModel();
                    emp.EmpName = EmployeeName;
                    emp.EmpId = EmployeeId;
                    emp.EmpLocation = Location;
                    DB.Employees.Add(emp);
                    DB.SaveChanges();
                    return Json(true, JsonRequestBehavior.AllowGet);
                }
            }
            catch (Exception Ex)
            {

            }
            return Json(false, JsonRequestBehavior.AllowGet);
        }

3 个答案:

答案 0 :(得分:2)

您正在使用控制器json respose,而不是ApiController响应类型。 使用下面的代码,您应该全部设置。

return new JsonResult()
            {
                Data = false,
                JsonRequestBehavior = JsonRequestBehavior.AllowGet
            };

答案 1 :(得分:0)

我遇到了同样的问题。原来我的课程定义为" public class PersonalApiController:ApiController"而不是" public class PersonalApiController:Controller"。改变这解决了问题。

答案 2 :(得分:0)

将公共类 shahriarController : ApiController 更改为 公共类 shahriarController :控制器。 您必须从 Controller 继承,而不是从 ApiController 继承。 它将解决'JsonRequestBehavior.AllowGet'。

if( 'career' == $post_type ){
        $slug = get_option('tommusrhodus_careers_slug', 'careers');
        $home .= '<li class="active"><a href="' . esc_url( home_url( "/". $slug ."/" ) ) . '">' . esc_html__( 'Careers', 'stack' ) . '</a></li>';
    }