Angular-Web api post метод модели является нулевым - PullRequest
0 голосов
/ 22 октября 2018

В приведенном ниже коде всегда получается, что модель является нулевой, но не проблема для строкового параметра [frombody]. Задайте значения в WebApiConfig

 var cors = new EnableCorsAttribute(origins:"*",methods: "*", headers: "*");
        config.EnableCors(cors);

// controller

[Route("SaveorUpdateCategory")]
    [HttpPost]
    public IHttpActionResult SaveorUpdateCategory(ModelCategory model)
    {
        string res = objcate.SaveorUpdateCategory(model);
        return Ok(res);

    }

// angular service

  SaveorUpdateCategory( model: any): Observable<any> {
     this.headers= new Headers({ 'Content-Type': 'application/json' })
    this.options = new RequestOptions({ headers: this.headers });
   let body = JSON.stringify(model);
   return this._http.post(this.BaseURL+"Category/SaveorUpdateCategory", model, this.options)
       .map((response: Response) => <any>response.json())
        .catch(this.handleError);

}

образец модели имеет вид {category: 'Test', Id: '1'}, когда передача одной переменной получает значение. Но модель всегда получает значение NULL

установленные cors в виде Install-Package Microsoft.AspNet.WebApi.Cors

1 Ответ

0 голосов
/ 22 октября 2018

Измените метод веб-API следующим образом, используя FromBody,

public void Disconnect([FromBody] ModelCategory model) {  }
...