Controller Error: BadRequest Cannot implicitly convert type 'Microsoft.AspNetCore.Mvc.BadRequestObjectResult' to 'Models..'
Severity |
Code |
Description |
Error |
CS0029 |
Cannot implicitly convert type 'Microsoft.AspNetCore.Mvc.BadRequestObjectResult' to 'Models.ArticleModel' |
Beim Verwenden on Results wie BadRequest oder OK entsteht ein Fehler
In Asp.Net Core C# MVC
Fehlerhafter Code oder zu verbessern
// PUT api/<ArticlesController>/5 //=Upadate [HttpPut("{id}")] //public void Put(int id, [FromBody] string value) public async Task<ArticleModel> Update_Article(ArticleModel article) { //*get matching Article from Database by ID var dbArticle = await _dbContext.tbl_Articles.FindAsync(article.IDArticle); //*check if (article == null) return BadRequest("Article not found");
_dbContext.tbl_Articles.Add(article); await _dbContext.SaveChangesAsync();
return dbArticle; } |
Lösung:
Man muss bei der Funktion das Rückgabe-Objekt in Task<Actionresult<..>> kapseln
[HttpPut("{id}")] public async Task<ActionResult<ArticleModel>> Update_Article(ArticleModel article) { //*get matching Article from Database by ID var dbArticle = await _dbContext.tbl_Articles.FindAsync(article.IDArticle); //*check if (article == null) return BadRequest("Article not found");
_dbContext.tbl_Articles.Add(article); await _dbContext.SaveChangesAsync();
return dbArticle;
} |