我有一个Employees视图模型
public class EmployeeViewModel
{
public int Id { get; set; }
// some more properties
public List<EmployeeReservationViewModel> Reservations { get; set; }
}..。这张是给EmployeeReservations的
public class EmployeeReservationViewModel
{
public int Id { get; set; }
public int EmployeeId { get; set; }
// some more properties
public EmployeeViewModel Employee { get; set; }
}在Employees Details-view中,我有一个添加新EmployeeReservation的链接,如下所示:
<a asp-controller="EmployeeReservations"
asp-action="Create">Add reservation</a>我应该如何把EmployeeId传递给EmployeeReservations/Create-View?
目前,我在控制器中的Employees‘session方法中使用了一个会话变量,如下所示:
HttpContext.Session.SetInt32("EmployeeId", employee.Id);..。然后在EmployeeReservations-controller中的Create方法中撤回它:
employeeReservation.EmployeeId = HttpContext.Session.GetInt32("EmployeeId").Value;
db.Add(employeeReservation);
await db.SaveChangesAsync();我有一种感觉,我的方法不是最佳的。如果会议超时了呢?还有另外一种更安全的方法吗?
发布于 2018-11-23 06:37:15
您可以使用asp-route id。
在望
<a asp-controller="EmployeeReservations"
asp-action="Create" asp-route-id="10">Add reservation</a>在Controller中添加id作为参数,然后创建操作
Public IActionResult Create(string id){
}https://stackoverflow.com/questions/53441614
复制相似问题