我在用WEB引用事,提示:
类型 System.ComponentModel.ISite 的成员 System.ComponentModel.MarshalByValueComponent.Site 是接口,因此无法将其序列化。 
请问问题出在哪?
还有就是,Web引用时,应注意什么?谢谢各位

解决方案 »

  1.   

    把要引用的dll都放到bin文件夹下
      

  2.   

    楼主是web引用 
    那么对于 引用服务里面的方法 必须都是实现了的
    即必须是类中定义了的 不能是接口.
      

  3.   

    我没有设置什么接口呀.就是正常的建立了个WEB服务.然后引用的.
      

  4.   

    我想把从数据库表中查询的列,添加到控件中。其中运用了WEB引用。大家帮忙看下,有什么问题?
    [WebMethod]
    public DataTable GetTab(string tabid)

    string ConnString = System.Configuration.ConfigurationSettings.AppSettings["ConnectiongSqlServer"];
    SqlConnection con=new SqlConnection(ConnString);
    SqlCommand topcmd=new SqlCommand("GetsysTab",con);//new
                                   
    topcmd.CommandType = CommandType.StoredProcedure;//new                
    topcmd.Parameters.Add(new SqlParameter("@tabid",SqlDbType.VarChar,20));
    topcmd.Parameters["@tabid"].Value=tabid;


    DataSet ds_Tabs =new DataSet();


    SqlDataAdapter adapter = new SqlDataAdapter(topcmd);
    adapter.Fill(ds_Tabs,"thisTab");
    return ds_Tabs.Tables["thisTab"];
    }谢谢各位
      

  5.   

    不要返回DataTable返回DataSet 
    因为DataTable 不能序列化
      

  6.   

    这么可否?
    [WebMethod]
    public DataTable GetTab(string tabid)

    string ConnString = System.Configuration.ConfigurationSettings.AppSettings["ConnectiongSqlServer"];
    SqlConnection myConn=new SqlConnection(ConnString);
    SqlCommand topcmd=new SqlCommand();//new
    topcmd.Connection= myConn;
    topcmd.Parameters.Add(new SqlParameter("@tabid",SqlDbType.VarChar,20));
    topcmd.Parameters["@tabid"].Value=tabid;
    topcmd.CommandText="GetsysTab";
                 
    topcmd.CommandType = CommandType.StoredProcedure;//new
                DataSet ds_Tabs =new DataSet();
                    

    SqlDataAdapter adapter = new SqlDataAdapter(topcmd);
    adapter.Fill(ds_Tabs,"thisTab");
    return ds_Tabs.Tables["thisTab"];
    }
      

  7.   

    public DataTable GetTab(string tabid)==>
    public DataSet GetTab(string tabid)
    {
         //...........
        return ds_Tabs;
    }
      

  8.   

    我定义的是:public DataTable GetTab(string tabid)
    不能返回DataTable么?要想返回表中的数据,那应该如何改写?