【问题标题】:Stream byte[] or file from RIA service to Silverlight client将字节 [] 或文件从 RIA 服务流式传输到 Silverlight 客户端
【发布时间】:2012-01-30 18:50:01
【问题描述】:

我正在寻找从 SL5 客户端的 SL4 检索的 RIA 服务流式传输字节的良好示例或最佳实践。这个想法是 SL 客户端需要下载 RIA 服务中生成的文件。

最好是,我想在 RIA 中打开一个常规字节流并将其下载到客户端。

有什么好的例子吗?

【问题讨论】:

    标签: silverlight ria


    【解决方案1】:

    我使用这个代码,但我不知道,最好的解决方案是什么

    服务器端

      public string GetUserPhoto(string Username)
               {
                 byte[] Photo = DomainController.GetUserPhoto(Username);
    
                 StringBuilder hex = new StringBuilder(Photo.Length * 2);
                 foreach (byte b in Photo)
                   hex.AppendFormat("{0:x2}", b);
                 return hex.ToString();
    
               }
    

    客户端

    InvokeOperation<string> InvokeOp = context.GetUserPhoto(username);
            InvokeOp.Completed += (s, e) =>
              {
                if (!InvokeOp.HasError)
                {
                  string photo = ((InvokeOperation<string>)s).Value;
    
                  int NumberChars = photo.Length; 
                  byte[] bytes = new byte[NumberChars / 2]; 
                  for (int i = 0; i < NumberChars; i += 2)
                    bytes[i / 2] = Convert.ToByte(photo.Substring(i, 2), 16);
    
                  _UserPhoto = bytes;
    
                  onPropertyChanged("UserPhoto");
                }
              };
    

    【讨论】:

    • 是的,我知道我可以简单地将字节或字符串返回给客户端,并让客户端以它想要的方式使用内容,或创建文件等。我想我想知道如何我可以这样做,以便我可以将字节从服务器流式传输到客户端,并让客户端在字节以块的形式出现时对其进行处理。除非我遗漏了什么,否则我看不到任何使用 RIA 的本地方法。
    猜你喜欢
    • 1970-01-01
    • 2010-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-19
    • 2015-05-17
    • 1970-01-01
    • 2015-11-29
    相关资源
    最近更新 更多