在 WebAPI POST 方法中如何传递在数据库 ASP.NET 中设置为 Uniqueidentifier 的 Id?
In WebAPI POST method how to pass Id which is set to Uniqueidentifier in database ASP.NET?
我在数据库中有一个 Users table,其 Id PK 设置为 Uniqueidentifier。现在使用 Web API 我正在通过邮递员将新用户添加到数据库中。当我添加第一条记录时,它会将用户添加到数据库中,但是为了添加更多记录,它不允许我添加,因为没有生成唯一的 ID。在 Internet 上,我发现我可以为此目的使用 GUID,但无法找到如何使用 Linq 在我的控制器中传递它。这是我使用的 Post 添加新用户的方法:
[HttpPost]
public async Task<IHttpActionResult> AddNewUser([FromBody] User user)
{
try
{
using (var newuser = new hospiceEntities())
{
newuser.Users.Add(new User()
{
id = user.Id,
UserName = user.UserName,
PasswordHash = user.PasswordHash,
Discriminator = user.Discriminator,
ApplicationId = user.ApplicationId,
LoweredUserName = user.LoweredUserName,
IsAnonymous = user.IsAnonymous,
Email = user.Email,
IsApproved = user.IsApproved,
IsLockedOut = user.IsLockedOut,
CreateDate = user.CreateDate,
FailedPasswordAnswerAttemptCount = user.FailedPasswordAnswerAttemptCount,
IsTempPassword = user.IsTempPassword,
LockoutCount = user.LockoutCount,
AccessFailedCount = user.AccessFailedCount,
LockoutEnabled = user.LockoutEnabled
}); ;
newuser.SaveChanges();
return Ok(Helper.SuccessResponse());
// await newuser.SaveChangesAsync();
}
}
catch (Exception ex) {
return BadRequest(Helper.ErrorResponse(ex.Message));
}
}
进入数据库的第一条记录如下:
试试这个
try
{
user.Id=Guid.NewGuid();
using (var newuser = new hospiceEntities())
{
newuser.Users.Add(user);
await newuser.SaveChangesAsync();
return Ok(Helper.SuccessResponse());
}
}
catch (Exception ex) {
return BadRequest(Helper.ErrorResponse(ex.Message));
}
}
我在数据库中有一个 Users table,其 Id PK 设置为 Uniqueidentifier。现在使用 Web API 我正在通过邮递员将新用户添加到数据库中。当我添加第一条记录时,它会将用户添加到数据库中,但是为了添加更多记录,它不允许我添加,因为没有生成唯一的 ID。在 Internet 上,我发现我可以为此目的使用 GUID,但无法找到如何使用 Linq 在我的控制器中传递它。这是我使用的 Post 添加新用户的方法:
[HttpPost]
public async Task<IHttpActionResult> AddNewUser([FromBody] User user)
{
try
{
using (var newuser = new hospiceEntities())
{
newuser.Users.Add(new User()
{
id = user.Id,
UserName = user.UserName,
PasswordHash = user.PasswordHash,
Discriminator = user.Discriminator,
ApplicationId = user.ApplicationId,
LoweredUserName = user.LoweredUserName,
IsAnonymous = user.IsAnonymous,
Email = user.Email,
IsApproved = user.IsApproved,
IsLockedOut = user.IsLockedOut,
CreateDate = user.CreateDate,
FailedPasswordAnswerAttemptCount = user.FailedPasswordAnswerAttemptCount,
IsTempPassword = user.IsTempPassword,
LockoutCount = user.LockoutCount,
AccessFailedCount = user.AccessFailedCount,
LockoutEnabled = user.LockoutEnabled
}); ;
newuser.SaveChanges();
return Ok(Helper.SuccessResponse());
// await newuser.SaveChangesAsync();
}
}
catch (Exception ex) {
return BadRequest(Helper.ErrorResponse(ex.Message));
}
}
进入数据库的第一条记录如下:
试试这个
try
{
user.Id=Guid.NewGuid();
using (var newuser = new hospiceEntities())
{
newuser.Users.Add(user);
await newuser.SaveChangesAsync();
return Ok(Helper.SuccessResponse());
}
}
catch (Exception ex) {
return BadRequest(Helper.ErrorResponse(ex.Message));
}
}