Как установить CreationDate загруженного файла в C # - PullRequest
0 голосов
/ 07 декабря 2018

У меня есть файлы в хранилище BLOB-объектов Azure.На веб-странице эти файлы могут быть загружены.

Это прекрасно работает, но creation date и modified date установлены не так, как мне нужно.

Вот код:

    [HttpGet]
    public HttpResponseMessage Download()
    {
        Download download;
        [...]
        var fileStorage = new BlobStorage(download.ContainerName);

        BlobProperties blobProperties;
        var result = new HttpResponseMessage(HttpStatusCode.OK)
        {
            Content = new ByteArrayContent(fileStorage.Download(download.Url, out blobProperties))
        };

        result.Content.Headers.LastModified = blobProperties.LastModified;

        result.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment")
        {
            FileName = download.FileName,
            CreationDate = blobProperties.LastModified,
            ModificationDate = blobProperties.LastModified,
            Size = blobProperties.Length
        };

        result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
        return result;
    }

blobProperties.LastModified имеет правильное значение DateTimeOffset.Но когда я смотрю на загруженный файл на моем диске (под управлением Windows), дата файла отличается.Иногда это текущая дата при загрузке.Иногда полная другая дата, которая может быть раньше или позже, чем blobProperties.LastModified.

Когда у вас есть папка для загрузки с большим количеством файлов, это очень затрудняет поиск файла.

Iнужна либо текущая дата, либо дата из свойств блога, но не кажущаяся случайной дата.

Вот вывод Fiddler:

HTTP/1.1 200 OK
Cache-Control: private
Content-Length: 802074
Content-Type: application/octet-stream
Last-Modified: Tue, 13 Nov 2018 10:17:20 GMT
Server: Microsoft-IIS/10.0
Content-Disposition: attachment; filename="myFile.xlsx"; creation-date="Tue, 13 Nov 2018 10:17:20 GMT"; modification-date="Tue, 13 Nov 2018 10:17:20 GMT"; size=802074
X-AspNet-Version: 4.0.30319
X-SourceFiles: =?UTF-8?B?R?=
X-Powered-By: ASP.NET
Date: Fri, 07 Dec 2018 09:53:17 GMT

Как видите, дата установлена ​​на ноябрь.13, текущая дата - 7 декабря, но дата на моем диске 26-9-2018 16:54

Любые указатели будут высоко оценены.

...