我在Web API中有一个方法,我使用该对象作为输入,但是当我尝试使用URI运行API时,对象内的字段为空。在Web API输入中使用时,复杂对象为空
这是我的方法:
[HttpGet]
[Route("AddUser/{user}")]
public async Task<string> CreateUser([FromUri]AddUser user)
{
//LoansApiTrace.Trace.Verbose(EventId.Start,() => string.Format("{0}: {1}", "AddUser", user.));
string Exception = await Repository.AddUserAsync(user);
return Exception;
}
这是ADDUSER对象:
public class AddUser
{
public string UserEmailAddress { get; set; }
public string PasswordHash { get; set; }
public string Salt { get; set; }
public string RemoteRefNumber { get; set; }
}
,这是URI:
http://localhost:59509/Adduser/[email protected],pass,salt,remref/
它去的方法,但UserEmailAddress,PasswordHash ,..所有4都是空的。
你为什么要把对象放在Uri而不是身体? –
@RyanGates在GET中? –
@KennethK。我不认为'CreateUser'应该是一个'GET'。我会认为这将是一个'POST'。我没有仔细观察。现在,我做到了,它让我感到奇怪。 –