【发布时间】:2012-03-05 14:00:40
【问题描述】:
我有以下 WCF 方法
[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;
}
我有一个 jQuery Ajax 客户端代码如下
<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>
一旦 ajax 调用 AddUser 方法 LoginId 和 Name 值在 AddUser 方法的两个参数中设置,但是,我想要做的是具有如下的方法签名
public User AddUser(User user)
当然,User 类中有 LoginId 和 Name 属性。
如何在不手动设置值的情况下自动将客户端参数绑定到用户实例?
【问题讨论】: