zoukankan      html  css  js  c++  java
  • web通过Ajax与WCF交互

    期望实现的功能:通过http协议从wcf获取数据,数据通过json对象来传输

    环境:visual studio 2010(.net 4.0)+web网页(ajax)

    1. 使用Visual studio 创建asp.net web应用程序。

    2. 创建一个启动了Ajax的WCF服务

    3. 创建一个Student类
      namespace WebServiceWCFDemo
      {
          [DataContract] 
          public struct Student
          {
              private string name;
              private string password;
      
               
              public Student(string name, string password)
              {
                  this.name = name;
                  this.password = password;
              }
      
              [DataMember] 
              public string Name
              {
                  get { return name; }
                  set { name = value; }
              }
              [DataMember] 
              public string Password
              {
                  get { return password; }
                  set { password = value; }
              }
          }
      }
      

       Student类是数据契约,类名前要加[DataContract],属性之前要加[DataMember]。不然的话,ajax不能解析序列化的json的对象。

    4. 修改服务契约,向AnXunYunService类中添加如下方法。

          

            [OperationContract]
            [WebGet]
            public string Check(Student s)
            {
                if (s.Name.Equals("zhangsan") && s.Password.Equals("123456"))
                {
                    return "success";
                }
                
                return "false";
            }
    
            [OperationContract]
            [WebGet]
            public List<Student> GetStudent()
            {
                List<Student> students = new List<Student>();
                students.Add(new Student("zhangsan","11223"));
                students.Add(new Student("lisi","123445"));
                students.Add(new Student("wanger","12333"));
                return students;
            }
    

      5. 在IIS中部署项目。然后在web 页面通过ajax访问。

        web 页面首先要应用jquery.js

        javascript代码如下:

        

    
    

      var data = {"Name":"zhangsan","Password":"123456"};
      data = "s="+JSON.stringify(data);
      $.ajax({
             url:"http://192.168.1.134/AnXunYunServce.svc/Check",
             type:'get',
             contentType:'application/json',
             data:data,
             success:function(result){
             alert(result.d);
             }
     
      })

    
    

      结果出现 success弹框。

        

  • 相关阅读:
    css3
    My97DatePicker时间控件使用
    练习中遇到的问题及知识点
    使用slideDown和slideUp做二级菜单时遇到的bug解决方法
    Google Chrome浏览器不支持小于12px的字体大小的问题及解决方法(我写的都不行)
    区别不同浏览器的兼容性
    img图片元素下多余空白解决方案
    gridview列绑定HyperLink
    vs设计界面出现“建控件时出错 响应在此上下文中不可用”
    SQL Server不能通过外部IP访问,解决方法
  • 原文地址:https://www.cnblogs.com/gracexu/p/3037203.html
Copyright © 2011-2022 走看看