Я думаю, что упускаю что-то очевидное ....
Я читал код в новом проекте и обнаружил код, эквивалентный следующему:
var filePath = @"C:\temp\tmp1234.tmp"; // Generally obtained from System.IO.* calls
var uri = new Uri("file://" + filePath);
Я думал, что это будет эквивалентно:
var filePath = @"C:\temp\tmp1234.tmp";
var uri = new Uri(filePath);
(при условии, что класс Uri может проанализировать путь к файлу, вывести схему и сделать все, что нужно для экранирования).
Так как код, кажется, работает, и это делается так часто и так последовательно, я предполагаю, что у оригинального разработчика была веская причина для использования идиомы "file://" + filePath
. Может ли кто-нибудь подсказать мне, что это может быть за причина?
Спасибо!