WEB开发网
开发学院图形图像Flash Silverlight专题(16)- 动态设置WCF Service配置... 阅读

Silverlight专题(16)- 动态设置WCF Service配置信息

 2009-02-28 11:56:14 来源:WEB开发网   
核心提示:本文示例源代码或素材下载 问题:在Silverlight中是使用ServiceReferences.ClientConfig文件来保存和查看WCF服务的相对信息的而ServiceReferences.ClientConfig又是包含在.xap文件中的这样就导致如果您的Silverlight工程有用到WCF服务就

本文示例源代码或素材下载

问题:

在Silverlight中是使用ServiceReferences.ClientConfig文件来保存和查看WCF服务的相对信息的

而ServiceReferences.ClientConfig又是包含在.xap文件中的

这样就导致如果您的Silverlight工程有用到WCF服务就需要在每次部署到不同网站的时候重新更改下WCF的配置并重新编译

而且这个重新配置的过程又往往可能需要Visual Studio 2008的帮助来重新链接WCF服务

而且对于有些部署的服务器就可能非常不现实了(有的服务器要求系统干净,不允许安装其他软件)

那么怎么办呢?

解决方案:

首先让我们来创建一个含有WCF Service的Silverlight工程

并在Web工程中添加一个Silverlight-enabled WCF Service如下

Silverlight专题(16)- 动态设置WCF Service配置信息

并在其中加入如下代码用于存储产品信息(包括Name名字、Description描述、Price价格):

  1: [DataContract]

  2: public class ProductInfo

  3: {

  4:   [DataMember]

  5:   public string Name;

  6:  

  7:   [DataMember]

  8:   public double Price;

  9:  

 10:   [DataMember]

 11:   public string Description;

 12: }

而其OperateContract为

  1: [ServiceContract(Namespace = "")]

  2: [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]

  3: public class ProductService

  4: {

  5:   [OperationContract]

  6:   public List<ProductInfo> RetreiveData()

  7:   {

  8:     List<ProductInfo> products=new List<ProductInfo>();

  9:     for (int i = 0; i < 8; i++)

 10:     {

 11:       products.Add(new ProductInfo()

 12:               {

 13:                 Name = "Product " + (i + 1),

 14:                 Price = 30.5*(i+1),

 15:                 Description = "Product "+(i+1)+" for test"

 16:               }

 17:       );

 18:     }

 19:     // Add your operation implementation here

 20:     return products;

 21:   }

 22: }

1 2 3 4 5  下一页

Tags:Silverlight 专题 动态

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接