ajax的访问 WebService 的方法

转自原文 ajax的访问 WebService 的方法

如果想用ajax进行访问 首先在web.config里进行设置

添加在 






>

节点之下

这样就是可以通过url进行访问了 不然就会报错

 

然后直接亮代码  代码也是网上找到的  如有雷同,请联系本人

 

[WebService(Namespace = "http://tempuri.org/")]
   [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
   [System.ComponentModel.ToolboxItem(false)]
   // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。
   [System.Web.Script.Services.ScriptService]
   public class WebService1 : System.Web.Services.WebService
   {
       /// 
       /// 无参数
       /// 
       /// 
       [WebMethod]
       public string HelloWorld()
       {
           return "Hello World ";
       }
 
       /// 
       /// 带参数
       /// 
       /// 
       /// 
       /// 
       /// 
       /// 
       [WebMethod]
       public string GetWish(string value1, string value2, string value3, int value4)
       {
           return string.Format("祝您在{3}年里 {0}、{1}、{2}", value1, value2, value3, value4);
       }
 
       /// 
       /// 返回集合
       /// 
       /// 
       /// 
       [WebMethod]
       public List<int> GetArray(int i)
       {
           List<int> list = new List<int>();
 
           while (i >= 0)
           {
               list.Add(i--);
           }
 
           return list;
       }
 
       /// 
       /// 返回一个复合类型
       /// 
       /// 
       [WebMethod]
       public Class1 GetClass()
       {
           return new Class1 { ID = "1", Value = "牛年大吉" };
       }
 
 
       /// 
       /// 返回XML
       /// 
       /// 
       [WebMethod]
       public DataSet GetDataSet()
       {
           DataSet ds = new DataSet();
           DataTable dt = new DataTable();
           dt.Columns.Add("ID", Type.GetType("System.String"));
           dt.Columns.Add("Value", Type.GetType("System.String"));
           DataRow dr = dt.NewRow();
           dr["ID"] = "1";
           dr["Value"] = "新年快乐";
           dt.Rows.Add(dr);
           dr = dt.NewRow();
           dr["ID"] = "2";
           dr["Value"] = "万事如意";
           dt.Rows.Add(dr);
           ds.Tables.Add(dt);
           return ds;
       }
 
 
   }
   //自定义的类,只有两个属性
   public class Class1
   {
       public string ID { get; set; }
       public string Value { get; set; }
   }


  然后是ajax的代码

 

 

 

然后就是这5个ajax得到的响应

ajax的访问 WebService 的方法_第1张图片

 

是不是很奇怪为什么json里都有个d  我也很奇怪估计是服务端把其他格式解析成json的时候自己添加的

 

还有一个问题 ajax的代码  contentType: "application/json", //WebService 会返回Json类型

 

 dataType: 'json' 这2者的区别是啥  如果知道请告诉我下。

 

你可能感兴趣的:(ajax的访问 WebService 的方法)