예제 #1
0
        public async Task <IActionResult> CreateCredential([Bind("ProjectId,Login,Notes,Password,Title")] CreateCredentialViewModel createViewModel)
        {
            if (createViewModel.ProjectId < 0)
            {
                return(NotFound());
            }

            if (ModelState.IsValid == true)
            {
                try
                {
                    var asset = new Credential();

                    asset.Title    = createViewModel.Title;
                    asset.Notes    = createViewModel.Notes;
                    asset.Login    = createViewModel.Login;
                    asset.Password = createViewModel.Password;

                    // get IP
                    string accessIpAddress = HttpContext?.Connection?.RemoteIpAddress?.ToString();

                    await _assetService.AddAssetToProjectAsync(createViewModel.ProjectId, asset, accessIpAddress);
                }
                catch (DbUpdateConcurrencyException)
                {
                    throw;
                }
                return(RedirectToAction(nameof(Details), new { id = createViewModel.ProjectId }));
            }

            return(RedirectToAction(nameof(Index)));
        }