gpt4 book ai didi

c# - 将 JavaScript 对象作为 Dictionary 传递给 C# WCF 服务

转载 作者:行者123 更新时间:2023-11-29 15:41:57 25 4
gpt4 key购买 nike

我正在尝试将 JavaScript 对象作为字典传递给 C# WCF 服务,但我不知道该怎么做...

我有一个 WCF 服务:

[OperationContract]
[WebInvoke]
public List<psy_trance_fm_genre> select(SortedDictionary<string, object> parameters)
{
...
}

我有一些 JavaScript/JQuery 代码:

$.ajax({
contentType: 'application/json; charset=utf-8',
data: JSON.stringify({ '@genre': '', '@start_row_index': 0, '@maximum_rows': 100 }),
error: function (jqXHR, textStatus, errorThrown) {
...
},
success: function (data, textStatus, jqXHR) {
...
},
type: 'POST',
url: 'svc/psy_trance_fm_genres.svc/select'
});

请帮我让他们一起工作!提前致谢!

最佳答案

也许这会帮助您或让您朝着正确的方向前进:

我正在使用的 Ajax 调用示例:

    var data2Send = {
"CategoryID": CatID, "AccountID": AccID, "RegionID": RegID, "PersonID": PerID, "BudgetID": BudID,
"AccountDetailTypeID": AdtID
}
//data2Send could also contain i.e. an array of arrays, list of lists, etc


$.ajax({
type: "GET",
url: '../../Service/myservice.svc/GetAccountDetails',
dataType: "json",
data: data2Send,
contentType: "application/json; charset=utf-8",
success: function (data) { var accountDetails = JSON.parse(data.d); },
error: function (jqXHR, textStatus, errorThrown) { alert(errorThrown); }
});

WCF 契约:

    [WebInvoke(Method = "GET")]
[OperationContract]
string GetAccountDetails(int AccountID = 0, int RegionID = 0, int PersonID = 0, int CategoryID = 0, int BudgetID = 0, string AccountDetailTypeID = "");

请注意,契约(Contract)返回一个字符串。我这样做使用:

        var accountDetailList = db.AccountDetails
.Select(ad => new
{
AccountDetailTypeID = ad.AccountDetailTypeID,
Reference = ad.Reference,
Description = ad.Description,
AccountDetailID = ad.AccountDetailID,
})
.ToList();

return JsonConvert.SerializeObject(accountDetailList);

希望对您有所帮助。

关于c# - 将 JavaScript 对象作为 Dictionary<string, object> 传递给 C# WCF 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17793951/

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