WEB开发网
开发学院图形图像Flash 使用SilverLight构建插件式应用程序(九) —聊天插... 阅读

使用SilverLight构建插件式应用程序(九) —聊天插件客户端的实现

 2008-10-30 11:48:57 来源:WEB开发网   
核心提示:这次是一个在线聊天的插件,插件参考了MSDN中Duplex WCF服务的实现和网上一些聊天程序,使用SilverLight构建插件式应用程序(九) —聊天插件客户端的实现,基本可以实现用户登录和聊天,如果用户不存在就保存聊天数据到数据库,所以就参照msdn和一些网上的代码,自己编写代理类进行操作:1: 定义聊天时候传输

这次是一个在线聊天的插件,插件参考了MSDN中Duplex WCF服务的实现和网上一些聊天程序,基本可以实现用户登录和聊天,如果用户不存在就保存聊天数据到数据库,等用户下次登陆的时候读入。

这个是聊天时候的图例:

使用SilverLight构建插件式应用程序(九) —聊天插件客户端的实现为什么不使用在客户单添加WCF服务的方法生成代理类然后进行编程序,首先是生成的代理类我没有发现可以实现WCF双向传输的方法,在网上也没有找到,所以就参照msdn和一些网上的代码,自己编写代理类进行操作:

1: 定义聊天时候传输聊天的数据实体,参照服务器端的聊天数据实体的定义,在客户端定义如下的实体:

[DebuggerStepThroughAttribute()]
  [GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")]
  [DataContractAttribute(Name = "ChatMessage", Namespace = "http://schemas.datacontract.org/2004/07/")]
  public partial class ChatMessage : object
  {
    private string DataField;
    private string FromField;
    private string ToField;
    private int TypeField;
    private byte[] ContentField;
    [DataMemberAttribute()]
    public string Data
    {
      get
      {
        return this.DataField;
      }
      set
      {
        if ((object.ReferenceEquals(this.DataField, value) != true))
        {
          this.DataField = value;
        }
      }
    }
    [DataMemberAttribute()]
    public string From
    {
      get
      {
        return this.FromField;
      }
      set
      {
        if ((object.ReferenceEquals(this.FromField, value) != true))
        {
          this.FromField = value;
        }
      }
    }
    [DataMemberAttribute()]
    public string To
    {
      get
      {
        return this.ToField;
      }
      set
      {
        if ((object.ReferenceEquals(this.ToField, value) != true))
        {
          this.ToField = value;
        }
      }
    }
    [DataMemberAttribute()]
    public int Type
    {
      get
      {
        return this.TypeField;
      }
      set
      {
        if ((object.ReferenceEquals(this.TypeField, value) != true))
        {
          this.TypeField = value;
        }
      }
    }
    [DataMemberAttribute()]
    public byte[] Content
    {
      get
      {
        return this.ContentField;
      }
      set
      {
        if ((object.ReferenceEquals(this.ContentField, value) != true))
        {
          this.ContentField = value;
        }
      }
  
    }  

1 2 3 4 5  下一页

Tags:使用 SilverLight 构建

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