Aufruf von WCF-service von jQuery-Ajax mit POST-Methode
Ich habe folgenden WCF-Methode
[OperationContract]
[WebInvoke(Method = "POST", UriTemplate = "UserService/AddUser", BodyStyle = WebMessageBodyStyle.WrappedRequest)]
public User AddUser(string LoginId, string Name)
{
var user = input;
//Some business logic here
return user;
}
Und ich habe einen jQuery-Ajax-client-code wie unten
<script type="text/javascript">
$(document).ready(function () {
$("#submit").click(function () {
var input =
{
LoginId: $("#LoginId").val(),
Name: $("#Name").val()
};
$.ajax({
cache: false,
type: "POST",
async: false,
url: "http://localhost:2000/UserService/AddUser",
data: JSON.stringify(input),
contentType: "application/json",
dataType: "json",
success: function (userViewModel) {
var user = userViewModel;
alert(user);
}
});
});
});
</script>
Einmal ajax aufrufen AddUser-Methode LoginId und Name-Wert festgelegt ist, in AddUser-Methode zwei parameter, jedoch, Was ich tun möchte, ist mit einer Signatur der Methode, wie unten
public User AddUser(User user)
Natürlich Klasse User haben LoginId und Name-Eigenschaften in ihm.
Binden von client-parameter Benutzer-Instanz automatisch, ohne dass der Wert manuell?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich die Lösung gefunden, indem ich mich
Sollte ich wickeln Sie die json-Daten mit dem Objekt-Namen wie folgt :