Kamlesh_Singh08 Ответов: 1

Как загрузить файл только для чтения в MVC


Я хочу вернуть файл только для чтения в mvc с помощью file result

Мой код таков

Что я уже пробовал:

<pre>public FileResult Download(string FileName)
        {
            byte[] fileBytes = System.IO.File.ReadAllBytes(Server.MapPath(@"~\Path\" + FileName));
            string fileName = FileName;
            return File(fileBytes, System.Net.Mime.MediaTypeNames.Application.Octet, fileName);
        }


загрузка работает, но атрибуты только для чтения удаляются из загруженного файла

как это исправить

1 Ответов

Рейтинг:
6

F-ES Sitecore

Как вы определяете, что файл "только для чтения"? Если вы устанавливаете его в файле, то это атрибуты, прикрепленные к файлу в файловой системе FAT32 или NTFS, тот факт, что файл доступен только для чтения, не является частью данных файла, и когда вы передаете файл клиенту, это только те данные, которые вы отправляете. Что делать, если вы отправляете файл кому-то, кто не использует FAT32\NTFS? Что делать, если у пользователя есть ОС, которая вообще не поддерживает файлы только для чтения?

В принципе, то, что вы делаете, невозможно. Многие типы документов, такие как PDF, Word и т. д., имеют способы защиты, поэтому вы должны использовать любые функции, поддерживаемые самим базовым типом файла, если таковые имеются.