예제 #1
0
 public IActionResult DefaultNoModelBinding(TestFileModel model)
 {
     return(Ok(new { Model = new {
                         model.Id,
                         model.Name,
                         Files = model.Files.Select(x => new {
                 x.Name,
                 x.FileName,
                 x.ContentDisposition,
                 x.ContentType,
                 x.Length
             })
                     }, ModelState.IsValid }));
 }
예제 #2
0
        public async Task <IActionResult> ModelBindingDisabled(TestFileModel bindingmodel)
        {
            byte[]           buffer = new byte[BUF_SIZE];
            List <IFormFile> files  = new List <IFormFile>();

            var model = await this.StreamFiles <TestModel>(async x => {
                using (var stream = x.OpenReadStream())
                    while (await stream.ReadAsync(buffer, 0, buffer.Length) > 0)
                    {
                        ;
                    }
                files.Add(x);
            });

            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            return(Ok(new {
                Model = model,
                BindingModel = new {
                    bindingmodel.Id,
                    bindingmodel.Name,
                    Files = bindingmodel.Files.Select(x => new {
                        x.Name,
                        x.FileName,
                        x.ContentDisposition,
                        x.ContentType,
                        x.Length
                    })
                },
                Files = files.Select(x => new {
                    x.Name,
                    x.FileName,
                    x.ContentDisposition,
                    x.ContentType,
                    x.Length
                }),
                ModelState.IsValid
            }));
        }
        public async Task <IActionResult> ModelBindingEnabled(TestFileModel bindingmodel)
        {
            byte[]           buffer = new byte[BUF_SIZE];
            List <IFormFile> files  = new List <IFormFile>();

            var model = await this.StreamFiles <TestModel>(async x => {
                using (var stream = x.OpenReadStream())
                    while (await stream.ReadAsync(buffer, 0, buffer.Length) > 0)
                    {
                        ;
                    }
                files.Add(x);
            });

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            return(Ok(new { Model = model, BindingModel = bindingmodel, Files = files, ModelState.IsValid }));
        }
 public IActionResult DefaultNoModelBinding(TestFileModel model)
 {
     return(Ok(new { Model = model, ModelState.IsValid }));
 }