public class MyEntity { public int Id { get; set; } public string Name { get; set; } public string UserId { get; set; } public ApplicationUser User { get; set; } }
public class MyEntitiesController : Controller
{
private readonly UserManager
public MyEntitiesController(UserManager userManager, ApplicationDbContext context)
{
_userManager = userManager;
_context = context;
}
public async Task Create()
{
var user = await _userManager.GetUserAsync(User);
if (user == null)
{
return RedirectToAction("Login", "Account");
}
var myEntity = new MyEntity { UserId = user.Id };
return View(myEntity);
}
[HttpPost]
[ValidateAntiForgeryToken]
public async Task Create(MyEntity myEntity)
{
if (ModelState.IsValid)
{
var user = await _userManager.GetUserAsync(User);
if (user == null)
{
return RedirectToAction("Login", "Account");
}
myEntity.UserId = user.Id;
_context.Add(myEntity);
await _context.SaveChangesAsync();
return RedirectToAction(nameof(Index));
}
return View(myEntity);
}
}
@model MyEntity