Ich habe eine Methode in der Web-API, die ich das Objekt als Eingabe verwendet, aber wenn ich versuche, die API mit URI die Felder innerhalb des Objekts sind Null.komplexe Objekt ist leer, wenn in Web API-Eingabe
das ist meine Methode:
public class AddUser
{
public string UserEmailAddress { get; set; }
public string PasswordHash { get; set; }
public string Salt { get; set; }
public string RemoteRefNumber { get; set; }
}
und dies ist der URI:
http://localhost:59509/Adduser/[email protected],pass,salt,remref/
es das Verfahren geht aber UserEmailAddress, PasswordHash
[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;
}
Diese AddUser Objekt ist , .. alle 4 sind leer.
Warum würden Sie das Objekt eher in den Uri legen als in den Körper? –
@RyanGates In einem 'GET'? –
@KennethK. Ich glaube nicht, dass 'CreateUser' überhaupt ein' GET' sein sollte. Ich würde denken, dass es ein "POST" wäre. Ich schaute nicht genau genug hin. Jetzt, da ich es getan habe, scheint es mir merkwürdig. –