silverlight - 打开文件

时间:2011-07-16 19:30:35

标签: c# silverlight file

我对Silverlight很陌生并寻找一个小方向。我有一个用silverlight写的简单的画廊应用程序。我希望能够在这个例子中,只需将xml或json文件ftp到应用程序知道要查看的文件夹中的服务器,然后让silverlight应用程序打开该文件。该文件将包含一个库类别,它的标题desc,图像和它们的标题,desc。我会将这些数据解除分类以用于显示新上传的类别。我已经在wpf中做了很多次这样的事情,但是无法找到在Silverlight中处理这个问题的最佳方法。感谢您的任何指导,如果我需要提供更多信息,请告诉我。我还上传了图像,xml或json文件将包含链接到它们的信息。

1 个答案:

答案 0 :(得分:1)

你必须使用WebClient。 这是一个小例子:

public MainPage()
        {
            InitializeComponent();

            GetFileContent("http://localhost/test/myjson.txt", ProcessResult, error => { throw error; });
        }

        private void ProcessResult(String result)
        {
            //Do stuff here
        }

        private void GetFileContent(String uri, Action<String> onData, Action<Exception> onError)
        {
            var wc = new WebClient();

            DownloadStringCompletedEventHandler handler = null;

            handler = (s, args) =>
            {
                wc.DownloadStringCompleted -= handler;
                if(args.Error != null)
                {
                    if(onError != null)
                        onError(args.Error);
                    return;
                }

                if(onData != null)
                    onData(args.Result);
            };
            wc.DownloadStringCompleted += handler;

wc.DownloadStringAsync(new Uri(uri,UriKind.Absolute));             }

您可以查看http://msdn.microsoft.com/en-us/library/cc197955(v=vs.95).aspx,因为您需要clientaccesspolicy来访问该文件。

这是你需要的吗?

BR,

TJ