Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将ID传递到控制器并在具有相同视图的模式上显示它_C#_Asp.net_Asp.net Mvc - Fatal编程技术网

C# 如何将ID传递到控制器并在具有相同视图的模式上显示它

C# 如何将ID传递到控制器并在具有相同视图的模式上显示它,c#,asp.net,asp.net-mvc,C#,Asp.net,Asp.net Mvc,我有一个由控制器填充的数据表: 控制器 public ActionResult Index() { vm = new RIROViewModel(); vm.RIROUsers = new List<ResourceViewModel>(); foreach (var user in db_RIRO.sp_GetAllRIRORoster()) { vm.RIROUsers.Add(new ResourceViewModel()

我有一个由控制器填充的数据表:

控制器

public ActionResult Index()
{
    vm = new RIROViewModel();
    vm.RIROUsers = new List<ResourceViewModel>();

    foreach (var user in db_RIRO.sp_GetAllRIRORoster())
    {
        vm.RIROUsers.Add(new ResourceViewModel()
        {
            EID = user.EID,
            FirstName = user.FirstName,
            LastName = user.LastName,
            EmployeeType = user.EmployeeType,
            ProjectName = user.ProjectName,
            JobTitle = user.JobTitle,
            Level = user.CareerLevel,
            ACNRollOn = user.HireDate,
            ManagerName = user.Manager,
            LeadName = user.Supervisor,
            UserID = user.UserID,
            RollTypeValue = user.RollTypeValue
        });
    }
    return View(vm);
}
以下是我尝试过的代码:

public ActionResult GetDetails(int id)
{
    sp_GetUserDetails_Result result = db_RIRO.sp_GetUserDetails(id).FirstOrDefault();
    ViewData["EID"] = result.EID;

    return View(result);
}

我正在使用存储过程
sp_GetUserDetails
,它接受一个参数
id
。如何将存储过程的结果传递给同一视图上的模态?

将模态创建为局部视图。 更改标记元素以生成javascript帖子。 在post请求中将@userId变量作为参数传递。 使用控制器中的数据填充模态。 返回局部视图。 将局部视图插入容器中。 将容器显示为模态

[控制器]

public ActionResult GetModalPartialView(long UserId){
 //map your db result to a view model.
 var model = db_RIRO.sp_GetUserDetails(id).FirstOrDefault();
 //return your view
 return view("~/Views/Shared/_Modal.cshtml",model);
}
[Html]

<a href="#" onclick="getDataAndShowView(@UserId)">View Modal</a>
<div id="modal-container" style=display:none;></div>

@Url.Action
似乎不起作用。当我检查控制台时,它只打印url以及
@url.Action
public ActionResult GetModalPartialView(long UserId){
 //map your db result to a view model.
 var model = db_RIRO.sp_GetUserDetails(id).FirstOrDefault();
 //return your view
 return view("~/Views/Shared/_Modal.cshtml",model);
}
<a href="#" onclick="getDataAndShowView(@UserId)">View Modal</a>
<div id="modal-container" style=display:none;></div>
function getDataAndShowView(UserId){
 var data = {
   UserId : UserId;
 };
 $.post("@Url.Action("GetModalPartialView","Controller")",data,function(resp){
    $("#modal-container").html(resp);
    $("#modal-container").modal("show");
 });
}