2009-07-13 3 views
0

При чтении из локального файла из Silverlight мы должны использовать специальный разделитель путей «/», отличный от обычного разделителя путей «\», иначе Silverlight не может получить связанный локальный файл, например, мы необходимо написать как c: /test/abc.wmv, кроме записи как c: \ test \ abc.wmv.Проблема с разделителем путей к файлу Silverlight

еще два вопроса,

  1. Любое простое решение использовать обычный разделитель файлов?

  2. Класс C# File/FileInfo будет использовать стандартный разделитель путей для представления имени файла (полное имя пути), как изменить весь стандартный разделитель пути в этот специальный разделитель пути, чтобы Silverlight мог распознать?

Я использую VSTS 2008 + C# + .Net 2.0.

заранее спасибо, George

ответ

2

Вы можете использовать метод расширения:

public string ToSilverlightPath(this string s) 
{ 
    return s.Replace("\\", "/"); 
} 

или

public string ToSilverlightPath(this Path p) 
{ 
    return p.GetFullPath().Replace("\\", "/"); 
} 

Edit:

Подумав еще немного си Вероятно, lverlight работает с URI.
То есть все пути в Silverlight являются URI.
Таким образом, вместо того, чтобы использовать Path вы, вероятно, следует использовать Uri, как:

Uri mySilverlightPath = new Uri(myPathString); 

или

Uri mySilverlightPath = new Uri(myPath.GetFullPath()); 

Не уверен, что это, хотя, но я предполагаю, что это будет иметь смысл.

+0

Спасибо CKret, любые идеи, как заставить Silverlight распознать обычный разделитель пути? – George2

+1

Ну, не работал с Silverlight, но я подумал об этом еще и отредактировал сообщение своими мыслями. –

+0

Но как получить входное значение для myPathString? Используя разделитель \ или используя разделитель /? – George2

 Смежные вопросы

  • Нет связанных вопросов^_^