«http:/***.168.**.8:***/UploadedFiles/CustomerKYC/Photo/134_26581.jpg» не является допустимым виртуальным путем.

Я получаю исключение http:/.168.11.8:/UploadedFiles/CustomerKYC/Photo/134_26581.jpg' не является допустимым виртуальным путем, когда я пишу WriteFile или TransferFile в следующем коде. Пожалуйста, дайте мне исправить код.

    Response.Clear();
    Response.ContentType = "application/octet-stream";
    Response.AppendHeader("content-disposition", "filename=" +NavigateURLID.Value);
    Response.WriteFile(Server.MapPath(url));
    Response.Flush();
    Response.End();

Мне нужно, чтобы файл с URL-адреса был загружен. Все они являются только файлами изображений (jpg)


person Anand Raj    schedule 28.08.2019    source источник
comment
Строка, передаваемая в MapPath, должна быть только /UploadedFiles/CustomerKYC/Photo/134_26581.jpg   -  person Steve    schedule 28.08.2019
comment
Что содержит url?   -  person mxmissile    schedule 28.08.2019
comment
Мой URL-адрес содержит http://***.168.11.8:***/UploadedFiles/CustomerKYC/Photo/134_26581.jpg. Я пробовал и без Server.mapPath, но получаю то же сообщение об ошибке. Когда он приходит после Response.WriteFile, URL-адрес преобразуется в http:/.168.11.8:/*********, который представляет собой только одну косую черту после http:/, но я передаю URL-адрес с двойной косой чертой http:/ / . В этом проблема?   -  person Anand Raj    schedule 29.08.2019


Ответы (2)


Попробуйте этот код поможет

Response.ContentType = ContentType;
Response.AppendHeader("Content-Disposition", "attachment; filename=" + Path.GetFileName(filePath));
Response.WriteFile(filePath);
Response.End();

URL-адрес ссылки: https://www.aspsnippets.com/Articles/Upload-and-Download-files-from-Folder-Directory-in-ASPNet-using-C-and-VBNet.aspx

person mohd mazhar khan    schedule 29.08.2019

Я нашел ответ после поиска в Интернете. Код есть.

    WebClient req=new WebClient();
    HttpResponse response = HttpContext.Current.Response;
    response.Clear();
    response.ClearContent();
    response.ClearHeaders();
    response.Buffer= true;
    response.AddHeader("Content-Disposition","attachment;filename=\"" +strURL + "\"");
    byte[] data=req.DownloadData(strURL);
    response.BinaryWrite(data);
    response.End();
person Anand Raj    schedule 29.08.2019