-2

我是 webservice 的新手,我在下面尝试做的是在方法中传递变量并从类中的不同表中从 sql 获取数据......但是对于某些运行此代码时,我看不到我的 webmethod。 ..任何帮助都非常感谢..当我被卡住并且明天必须交付一些东西时,越快越好...

namespace Webdata


{ 
public class Data : System.Web.Services.WebService
{

    class Record
    {
        public Char DESCRPTN_104 { get; set; }
        public Char PMDES_01 { get; set; }
        public Char PRTNUM_10 { get; set; }
        public Char ORDRef_10 { get; set; }
        public DateTime TNXDTE_01 { get; set; }


    [WebMethod]
   static List<Record> GetData(string ORDNUM_10)
    {
        SqlConnection con = new SqlConnection(@"Data Source=****;Initial Catalog=******;Integrated Security=true;");
        con.Open();
        SqlCommand cmd = new SqlCommand("SELECT DISTINCT Account_Types.DESCRPTN_104, Part_Master.PMDES1_01,Order_Master.PRTNUM_10,Order_Master.ORDNUM_10,Order_Master.ORDRef_10,Part_Master.TNXDTE_01 FROM (****.dbo.Order_Master Order_Master LEFT OUTER JOIN ****.dbo.Part_Master Part_Master ON Order_Master.PRTNUM_10=Part_Master.PRTNUM_01) LEFT OUTER JOIN ****.dbo.Account_Types Account_Types ON Part_Master.ACTTYP_01=Account_Types.ACTTYP_104 WHERE Order_Master.ORDNUM_10 = '" + ORDNUM_10 + "'", con);
        SqlDataReader dr = cmd.ExecuteReader();

        List<Record> records = new List<Record>();

        while (dr.Read())
        {
            records.Add(new Record()
            {
                DESCRPTN_104 = dr.GetChar(0),
                PMDES_01 = dr.GetChar(1),
                PRTNUM_10 = dr.GetChar(2),
                ORDRef_10 = dr.GetChar(3),
                TNXDTE_01 = dr.GetDateTime(4)
            });
        }

        dr.Close();
        con.Close();
        return records;
    }}
}
}
4

1 回答 1

0

如果通过“运行您的代码”,您的意思是查询服务以了解它实现了哪些操作,通过“不返回任何内容”,您的意思是服务声称它没有任何操作,并且您发布的代码正是您正在尝试的代码编译,那么我猜你看不到你的 WebMethod 因为你没有为你的方法指定一个可访问性级别,默认是私有的。WebMethods 都应该是公开的。

于 2013-05-13T18:24:50.630 回答