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;
}
|