2010-05-05 15 views
12

UNC yollarını file:/// URL'lerine dönüştürmem gerekiyor. Örneğin,UNC yolunu ASP.NET'teki 'file: ///' URL'sine dönüştürme

\\fileserver\share\dir\some file.ext --> file://///fileserver/share/dir/some%20file.ext 

Bunun için yerleşik bir işlev var mı?

+0

Doğru çıktıya benzemiyor. 'file: ///// fileserver/share/file.txt', adı '// fileserver/share/file.txt' olan localhost üzerindeki bir dosya anlamına gelir. –

cevap

13

Evet, Sistem ad alanında Uri sınıfını kullanın:

Uri uri = new Uri(@"\\fileserver\share\dir\some file.ext"); 
string url = uri.AbsoluteUri; 
+1

Bu, "file: //fileserver/share/dir/some%20file.ext" dosyasını verir ve açıkça talep edilen "file: /////fileserver/share/dir/some%20file.ext" dosyasını değil. UNC yollarının URL'ler olarak kodlanmasının "doğru" yolu, uzun bir tartışma olabilir, bkz. https://bugzilla.mozilla.org/show_bug.cgi?id=66194 - yine de bu, op'un sorusunu cevaplamada başarısız oluyor. – poizan42

0

ben yerleşik işlevi bulamadık. this benzer stackoverflow gönderisini buldum.