예제 #1
0
        public async Task <IActionResult> Create()
        {
            var viewModel = new SampleCreateViewModel();

            viewModel.MusicKeys   = new SelectList(await _context.MusicKey.ToListAsync(), "Id", "Name");
            viewModel.Genres      = new SelectList(await _context.Genre.ToListAsync(), "Id", "Name");
            viewModel.SampleTypes = new SelectList(await _context.SampleType.ToListAsync(), "Id", "Name");
            return(View(viewModel));
        }
예제 #2
0
        public async Task <IActionResult> Create([Bind("Id,SampleName,SampleTypeId,GenreId,MusicKeyId,SamplePath,BPM")] Sample sample, IFormFile file)
        {
            if (file != null)
            {
                var path = Path.Combine(
                    Directory.GetCurrentDirectory(), "wwwroot",
                    "AudioFiles", file.FileName);
                using (var stream = new FileStream(path, FileMode.Create))
                {
                    await file.CopyToAsync(stream);
                }
                ApplicationUser user = await GetCurrentUserAsync();

                sample.ApplicationUserId = user.Id;
                sample.SamplePath        = "AudioFiles/" + file.FileName;
                ModelState.Remove("sample.ApplicationUserId");
                if (ModelState.IsValid)
                {
                    _context.Add(sample);
                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Details), new { id = sample.Id }));
                }
                var viewModel = new SampleCreateViewModel();
                viewModel.MusicKeys = new SelectList(await _context.MusicKey.ToListAsync(), "Id", "Name");
                //new SelectListItem { Text = "Keys", Value = "True", Selected = true });
                viewModel.Genres      = new SelectList(await _context.Genre.ToListAsync(), "Id", "Name");
                viewModel.SampleTypes = new SelectList(await _context.SampleType.ToListAsync(), "Id", "Name");
                return(View(viewModel));
            }
            else
            {
                var viewModel = new SampleCreateViewModel();
                viewModel.MusicKeys   = new SelectList(await _context.MusicKey.ToListAsync(), "Id", "Name");
                viewModel.Genres      = new SelectList(await _context.Genre.ToListAsync(), "Id", "Name");
                viewModel.SampleTypes = new SelectList(await _context.SampleType.ToListAsync(), "Id", "Name");
                return(View(viewModel));
            }
        }