调用WCF返回Josn的两种方式

 

开始之前先定义个泛型类和数据对象类型

Code

 

方法一:

参考:

http://www.cnblogs.com/iamv/archive/2008/10/31/1323821.html

http://www.cnblogs.com/jillzhang/archive/2008/06/13/1219201.html

新建Ajax-enabled WCF Service

名字为ProductService.svc

WCF代码

Code

//随便定义一个返回的对象
            Product prod 
= new Product();
            
int i = productID;
            prod.ProductID 
= i;
            prod.Name 
= i.ToString() + "_V";
            prod.ProductNumber 
= i.ToString() + "007";


            MemoryStream stream 
= new MemoryStream();
            DataContractJsonSerializer serializer 
= new DataContractJsonSerializer(typeof(Product));
            serializer.WriteObject(stream, prod);
            stream.Position 
= 0;
            StreamReader streamReader 
= new StreamReader(stream);
            
return streamReader.ReadToEnd();
        }
    }
}

 

UI调用WCF代码

新建一个aspx页面

 

Code

 

主要是注意其中的JavaScript代码和ScriptManager

<asp:ScriptManager ID="ScriptManager1" runat="server">
     <Services>
          <asp:ServiceReference Path="~/ProductService.svc" />
     
</Services>
</asp:ScriptManager>

 

posted @ 2008-11-06 11:34  IamV  阅读(534)  评论(0编辑  收藏  举报