gpt4 book ai didi

c# jquery 未将对象引用设置为对象的实例

转载 作者:行者123 更新时间:2023-12-01 04:49:15 27 4
gpt4 key购买 nike

我有一个 C# Web 服务,我从 jquery 脚本中调用它。

这是c#中的web服务

[WebMethod]
[ScriptMethod(UseHttpGet = true)]
public void LoadService2Daily(string fromDate, string toDate, string[] campaigns)

在脚本中我这样做:

var selectedCampaigns = $("#campaignDiv input:checkbox:checked").map(function () {
return $(this).val();
}).get();
console.log(selectedCampaigns);


webServiceUrl = 'http://localhost:4025/vmp_webservice.asmx/LoadService2Daily';
$.getJSON(webServiceUrl,
{ fromDate: valFrom, toDate: valTo, campaigns: selectedCampaigns })
.done(function (result) {

我收到错误 500,当我检查响应时,它是未将对象引用设置到对象的实例。

注意

如果我从 Web 服务中删除了 string[] array,它可以正常工作,但是当我添加它时,它就停止工作了。所以我确信这是因为 string array 的原因,但我不知道错误到底在哪里。

没有数组的代码已经工作了 3 年,没有任何问题,但现在我正在进行一些编辑,我需要传递该数组。

这是打印 selectedCampgains 的 console.log 的屏幕截图。请注意,正如我在代码中向您展示的那样,该日志是在调用 Web 服务之前获取的

enter image description here

编辑

我注意到网络服务的 URL 是

Request URL:http://localhost:4025/vmp_webservice.asmx/LoadService2Daily?fromDate=2014-05-25+00%3A00%3A00&toDate=2014-05-25+23%3A59%3A01&campaigns%5B%5D=default&campaigns%5B%5D=Support

因为它不包含字符串数组,对吧?

编辑3

这是我得到的整个异常

System.NullReferenceException: Object reference not set to an instance of an object.
at System.Web.Services.Protocols.ValueCollectionParameterReader.Read(NameValueCollection collection)
at System.Web.Services.Protocols.UrlParameterReader.Read(HttpRequest request)
at System.Web.Services.Protocols.HttpServerProtocol.ReadParameters()
at System.Web.Services.Protocols.WebServiceHandler.CoreProcessRequest()

最佳答案

正在生成的 URL 有方括号,请检查是否可以在没有方括号的情况下工作,即没有 %5B 和 %5D(没有 url 编码)

http://localhost:4025/vmp_webservice.asmx/LoadService2Daily?fromDate=2014-05-25+00%3A00%3A00&toDate=2014-05-25+23%3A59%3A01&campaigns=default&campaigns=Support

关于c# jquery 未将对象引用设置为对象的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23858496/

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