예제 #1
0
        public async Task <FileUpload> PersistUpload(IFormFile upload, int userId, int?patrolId)
        {
            var dbRecord = new FileUpload()
            {
                FileSize = upload.Length,
                Name     = upload.FileName,
                PatrolId = patrolId,
                UserId   = userId
            };

            await this.InsertImageUpload(dbRecord);

            var    name = dbRecord.GetUniqueName();
            string path = Path.Combine(_imageRoot, name);

            using (var fs = new FileStream(path, FileMode.CreateNew))
            {
                using (var rs = upload.OpenReadStream())
                {
                    await rs.CopyToAsync(fs);
                }
            }
            return(dbRecord);
        }