gpt4 book ai didi

c# - 是否可以将数据从 AngularJS 传递到 Web 服务中带有模型参数的函数?

转载 作者:行者123 更新时间:2023-11-29 14:52:03 24 4
gpt4 key购买 nike

我想知道是否可以将数据从 AngularJS 传递到 Web 服务中带有模型参数的函数?

这是我的网络服务代码:

[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public void AddUser(
//string FirstName, string LastName, string Mi //this works
User user //not working
)
{
SqlConnection con = new SqlConnection(@"Data Source=########;Initial Catalog=test001;Persist Security Info=True;User ID=########;Password=########");
SqlCommand cmd = new SqlCommand("insert into [dbo].[User] values(@fname,@lname,@mi)", con);

con.Open();
cmd.Parameters.AddWithValue("@fname", user.FirstName);
cmd.Parameters.AddWithValue("@lname", user.LastName);
cmd.Parameters.AddWithValue("@mi", user.Mi);
cmd.ExecuteNonQuery();
con.Close();
}

这是我的 angularJS 代码:

$scope.Create = function () {
var user = {
FirstName: $scope.FirstName,
LastName: $scope.LastName,
Mi: $scope.Mi
};

$http.post('testws.asmx/AddUser', user, {
headers: { 'Content-Type': 'application/json; charset=utf-8' }
}).success(function (data) {
alert('Success');
});
}

最佳答案

这是非常可行的。在最坏的情况下,您可以像这样在您的服务方法中从 Request.Form 中提取参数。

[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public void AddUser()
{
/// here you get your json object from post data
var serializedUser = Request.Form["user"] as string;
var user = JsonConvert.DeserializeObject<User>(serializedUser);

SqlConnection con = new SqlConnection(@"Data Source=172.16.176.74;Initial Catalog=test001;Persist Security Info=True;User ID=onbapps;Password=sdu_123456");
SqlCommand cmd = new SqlCommand("insert into [dbo].[User] values(@fname,@lname,@mi)", con);

con.Open();
cmd.Parameters.AddWithValue("@fname", user.FirstName);
cmd.Parameters.AddWithValue("@lname", user.LastName);
cmd.Parameters.AddWithValue("@mi", user.Mi);
cmd.ExecuteNonQuery();
con.Close();
}

所以这是可能的,但我确信存在更简洁的方法来做到这一点。

关于c# - 是否可以将数据从 AngularJS 传递到 Web 服务中带有模型参数的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24155218/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com