如何从嵌入在 Lync 中的 Silverlight 读取文件?

Posted

技术标签:

【中文标题】如何从嵌入在 Lync 中的 Silverlight 读取文件?【英文标题】:How to read a file from Silverlight embedded in Lync? 【发布时间】:2011-11-30 17:54:12 【问题描述】:

我正在尝试从 Silverlight 读取 XML 文件。我做得很好,我从 xap 中读取它作为桌面应用程序(在 VS 2010 上运行)。

但是当我从 Lync 2010 的 CWE(对话窗口扩展)加载 silverlight 时,它返回一个未处理的错误。

作为应用程序,我这样做: 将 xml 文件作为参考添加到解决方案中 我将 xml 下载为 uri 下载完成后,我读取文件。

我们将不胜感激任何帮助或提示。

我使用的代码是这样的:

        private void button1_Click_1(object sender, RoutedEventArgs e)
    
        //this.MessageLabel_SET("Loading Languages...");

        WebClient xmlClient = new WebClient();
        xmlClient.DownloadStringCompleted += new DownloadStringCompletedEventHandler(XMLFileLoaded);
        xmlClient.DownloadStringAsync(new Uri(textBox1.Text, UriKind.RelativeOrAbsolute));
    

 void XMLFileLoaded(object sender, DownloadStringCompletedEventArgs e)
    
        string XmlString = e.Result; // Got all your XML data in to a string 
        Main_Language.Read_XML(XmlString);
        Main_Language.Load_Index_From_XML();
        LanguageSelector.ItemsSource = Main_Language.Language_Indexes;
        LanguageSelector.IsEnabled = true;
        sendData.IsEnabled = true;
        //MessageLabel_SET("Language Loaded");
    

那么,如何在 Silverlight 4 中从 CWE Lync 2010 应用程序读取外部文件?

【问题讨论】:

根据您托管 xap 文件的位置,您可能会遇到跨域访问问题,甚至是跨区域访问。 正如我所说,我将我的 xap 托管在与用户相同的计算机上,因为它是 lync 2010 CWE 哪一行抛出异常? 令人难以置信的是,错误消息没有显示真实的行(第 1 行字符 1),仅此而已。正如我所说,在构建/调试中不会发生,仅在 Lync 内部发生 【参考方案1】:

这可以通过使用独立存储文件来完成。 您读取 XML,然后将内容(而不是文件)复制到隔离的存储文件,等等。 “下载”也可以这样做,必须在读取隔离存储文件后创建文件。

【讨论】:

以上是关于如何从嵌入在 Lync 中的 Silverlight 读取文件?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 powershell 从 lync 对话中获取消息?

如何在 lync cwe 托管的 xbap 中获取当前对话?

Lync 客户端 SDK 控件的 UI 是不是有任何更改?

从 UCMA 应用程序中的电话号码检索 Lync 联系人

如何从我的 Java 程序创建 Lync 会议?

如何从 lync 客户端 2013 通信中检索 IM 消息