System.Unauthorized Exception

*

Исключение = System.Net.WebException: доступ к пути "c:\windows\system32\inetsrv\Dialer" запрещен. ---> System.UnauthorizedAccessException: доступ к пути 'c:\windows\system32\inetsrv\Dialer' запрещен. в System.IO.__Error.WinIOError(Int32 errorCode, String MaybeFullPath)
в System.IO.FileStream.Init (Строковый путь, режим FileMode, доступ к FileAccess, права Int32, логическое значение useRights, общий ресурс FileShare, параметры типа3232 bufferSize, параметры FileOptions, SECURITY_ATTRIBUTES secAttrs, строка msgPath, логический bFromProxy, логическое значение useLongIOp. в System.FileStream..ctor(Строковый путь, режим FileMode, доступ FileAccess, общий доступ к FileShare, Int32 bufferSize, параметры FileOptions, String msgPath, Boolean bFromProxy) в System.IO.FileStream..ctor(Строковый путь, режим FileMode, доступ FileAccess, общий ресурс FileShare)) в System.Net.FileWebStream..ctor (запрос FileWebRequest, путь строки, режим FileMode, доступ к FileAccess, общий доступ к FileShare) в System.Net.FileWebRequest.GetRequestStreamCallback(состояние объекта)
--- Конец внутренней трассировки стека исключений --- в System.Net.WebClient.UploadDataInternal(адрес Uri, метод String, данные Byte[], WebRequest и запрос) в System.Net.WebClient.UploadString(адрес Uri, метод String, Строковые данные)

*

Код, где происходит исключение

using (var writer = new StringWriter())
    {
       JsonSerializer.Create().Serialize(writer, payLoad);
       var result =client.UploadString(commDialerApiUrl,writer.ToString());
       return ((T)JsonConvert.DeserializeObject(result, typeof(T)));
    }

Я знаю, что приведенный выше код не идеален, однако мне просто нужно понять, почему даже делается попытка доступа. Кто-нибудь может дать некоторое представление, пожалуйста?

1 ответ

Решение

Хорошо, проблема была очень простой. Код пытался сделать пост Restful на пустой Uri. Поскольку Uri был пустым, веб-клиент пытался разрешить вызов файла (с тем же именем, что и у службы) в inetpub.

Так как ни один такой путь к файлу не был недействительным, поэтому ошибка ввода-вывода.

Другие вопросы по тегам