我有一個小的 .Net 5 Web Api 專案。應用代碼優先方法。MS SQL。英孚核心。
問題是 - 當控制器接收模型時Id- 它失敗并顯示 - “發生一個或多個驗證錯誤。”。如果控制器收到Id: 0- 沒關系,它可以作業。
問題是 - 是否可以Id在 POST 請求中省略屬性?我想完全省略Id請求。
模型:
public class Playback
{
public int Id { get; set; }
[Required]
public string Video_Name { get; set; }
[Required]
public string Video_Duration { get; set; }
public string Playback_User { get; set; }
public int Playback_Duration { get; set; }
}
控制器:
public async Task<IActionResult> AddPlaybackEvent2([FromForm] Playback model)
{
Playback @event;
try
{
@event = new Playback();
@event.Video_Name = model.Video_Name;
@event.Video_Duration = model.Video_Duration;
@event.Playback_User = model.Playback_User;
@event.Playback_Duration = model.Playback_Duration;
_db.Playbacks.Add(@event);
_db.SaveChanges();
}
catch (Exception e)
{
return BadRequest(e.Message);
}
return Ok(@event);
}
在 MS SQL 中檢查 - 已配置 Id 列的主鍵和標識增量。
uj5u.com熱心網友回復:
將此屬性添加到您的模型。如果您使用代碼優先方法,則需要在模型中進行設定
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/313343.html
