本文介绍了通过jquery调用Web服务时,我收到此错误。任何的想法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我得到的错误



here is the error that i get

System.InvalidOperationException: Missing parameter: MyParameterName.
   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()










<pre>
[WebService(Namespace="http://microsoft.com/webservices/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]

[System.ComponentModel.ToolboxItem(false)]
[System.Web.Script.Services.ScriptService]
    public class WebService1 : System.Web.Services.WebService
    {
        [WebMethod]
        [System.Web.Script.Services.ScriptMethod(ResponseFormat = System.Web.Script.Services.ResponseFormat.Json)]

         public List<string> MethodName(string parameterName)
            {

                List<string> result = new List<string>();


                    using (System.Data.SqlClient.SqlConnection con = new System.Data.SqlClient.SqlConnection("connectionstring"))
                    {
                        using (System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand("mydbasequery, con))

                        {
                            con.Open();
                            cmd.Parameters.AddWithValue("@xxx", parameterName);

                            System.Data.SqlClient.SqlDataReader dr = cmd.ExecuteReader();
                            while (dr.Read())
                            {
                                result.Add(dr["column_name"].ToString());
                            }
                            return result.ToList();
                        }
                    }
                }
                else
                {
                    result.Add("sample");
                    return result.ToList();
                }
            }













<pre lang="Javascript">
<pre>  <script type="text/javascript">
      $(document).ready(function () {
          functionName();
      });
      function functionName() {

          $('.classname').autocomplete({
              source: function (request, response) {
                  $.ajax({
                      async: true,
                      type: "POST",
                      contentType: "application/json; charset=utf-8",
                      data: "{'service_parameter' :'" + $('.classname').val() + "'}",
                      url: 'WebService1.asmx/MethodName',
                      dataType: "json",
                      crossDomain: true,
                      success: function (data) {
                          if (data != null) {
                              response(data.d);
                          }
                          else {
                              response("rule");
                          }
                       },

                      error: function (error) {
                          response("rule");
                      }
                  });
              },
              minLength: 10,
          });
      }
</script>





我尝试了什么:



我试过这段代码但仍然一遍又一遍地得到这个错误..



What I have tried:

I tried this code and still getting this error over and over again..

推荐答案




这篇关于通过jquery调用Web服务时,我收到此错误。任何的想法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-07 09:14