Web服务中的SoapException

时间:2011-07-13 06:19:12

标签: asp.net web-reference soapexception

我有一个标签控件。第一个选项卡有一个网格,其中一个列是一个复选框。用户选择它并单击选项卡下的“下一步”,然后转到下一个选项卡。

我正在使用网络参考来获取值。当页面第一次加载时,引用有效并且可以达到值,网格将被绑定。

但是当我点击“Next”时,发生回发并尝试再次绑定网格,然后引用给出“SoapExpection”。以下是详细信息:

- >我选择一行然后点击“下一步”:

protected void gridView_HtmlRowCreated(object sender, ASPxGridViewTableRowEventArgs e)
        {
            if (e.RowType == GridViewRowType.Data)
            {
                   //bla bla bla
                   //I get the error here:
                   ClassEntity tmpObjects = webService.callObjects(rowID);
                   //bla bla bla
            {
        {

- >而函数名为callObjects(int ID)(在Reference.cs中)

[System.Web.Services.Protocols.SoapDocumentMethodAttribute("...", RequestNamespace="...", ResponseNamespace="...", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public ClassEntity callObjects(int ID) {
            object[] results = this.Invoke("callObjects", new object[] {
                        ID});
            return ((ClassEntity)(results[0]));

确切的错误: “SoapException:服务器无法处理请求。对象引用未设置为对象的实例”

任何想法,建议或......解决方案?提前谢谢。

1 个答案:

答案 0 :(得分:1)

我使用用户名和密码来访问从System.Web.Services.Protocols.SoapHeader继承的类中的Web引用。

我在Page_Load中定义了用户名和密码,但是在点击“下一步”后它似乎正在清理这些值。所以我在gridView_HtmlRowCreated事件下做了相同的declerations,它起作用了。

希望能帮助像我这样的人。