省略.net Core Web Api POST请求中的Id属性



我有一个小的。net 5 Web Api项目。采用代码优先的方法。MS SQL。EF核心。

问题是-当控制器接收没有Id的模型时-它失败了-"发生了一个或多个验证错误"。如果控制器收到Id: 0- it is Ok, it works.

问题是-是否有可能在POST请求中省略Id属性?我想从请求中完全省略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列的主键和标识增量

将此属性添加到模型中。如果您使用代码优先方法,则需要在模型中设置此

[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }

相关内容

  • 没有找到相关文章

最新更新