silverlight - открытие файла - PullRequest
0 голосов
/ 16 июля 2011

Я новичок в Silverlight и ищу немного направления. У меня есть простое приложение галереи, написанное с помощью Silverlight. Я хотел бы иметь возможность в этом примере просто загрузить файл ftp xml или json на сервер в папке, в которой приложение, как известно, будет искать приложение, и заставить приложение silverlight открыть файл. Файл будет содержать категорию галереи, ее заголовок desc, изображения и их заголовок desc. Я бы десерализовал эти данные для отображения новой загруженной категории. Я делал подобные вещи много раз в wpf, но не могу понять, как лучше всего справиться с этим в silverlight. Спасибо за любое направление, и, пожалуйста, дайте мне знать, если мне нужно предоставить больше информации. Я также загрузил бы изображения, файл xml или json будет содержать информацию для ссылки на них.

1 Ответ

1 голос
/ 17 июля 2011

Вы должны использовать 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,, потому что вам нужна клиентская политика доступа для доступа к файлу.

Это то, что вам нужно?

BR,

TJ

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...