Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.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
Asp.net mvc 在操作方法和视图上显示之间传递变量?_Asp.net Mvc - Fatal编程技术网

Asp.net mvc 在操作方法和视图上显示之间传递变量?

Asp.net mvc 在操作方法和视图上显示之间传递变量?,asp.net-mvc,Asp.net Mvc,我有一个如下所示的控制器 [HttpPost] public JsonResult Index(string number) { .... ServiceReference1.WebsiteInterfaceSoapClient APITest = new ServiceReference1.WebsiteInterfaceSoapClient();

我有一个如下所示的控制器

           [HttpPost]
            public JsonResult Index(string number)
            {
             ....
                ServiceReference1.WebsiteInterfaceSoapClient APITest = new ServiceReference1.WebsiteInterfaceSoapClient();
                List<ServiceReference1.Student> ListStudents = APITest .CheckIDStudent("xxxxxxxxxxxxx", number).ToList();
             ....

              }
[HttpPost]
公共JsonResult索引(字符串编号)
{
....
ServiceReference1.WebsiteInterfaceSoapClient APITest=新的ServiceReference1.WebsiteInterfaceSoapClient();
List ListStudents=APITest.CheckIDStudent(“xxxxxxxxxxxx”,number.ToList();
....
}
我有一个这样的方法

    [HttpPost]
    public async Task<ActionResult> ValidateS(StudentsDetails userDetails, string marksPoint)
    { 
            ....
    }
[HttpPost]
公共异步任务验证(StudentsDetails用户详细信息、字符串标记点)
{ 
....
}

如何将
列表学生
上的所有数据像
(列表学生[0].ID,列表学生[0].Name…
一样传递到
验证
方法并在
视图
上显示它们?

您不能为
[HttpPost]
操作执行重定向功能。因此,您必须将
验证
操作方法更改为
[HttpGet]
。并使用
TempData
功能

[HttpPost]
public JsonResult Index(string number)
{
    ServiceReference1.WebsiteInterfaceSoapClient APITest = new ServiceReference1.WebsiteInterfaceSoapClient();
    List<ServiceReference1.Student> ListStudents = APITest .CheckIDStudent("xxxxxxxxxxxxx", number).ToList();
    TempData["studentList"] = ListStudents;
}

[HttpGet]
public async Task<ActionResult> ValidateS(StudentsDetails userDetails, string marksPoint)
{ 
    List<ServiceReference1.Student> studentList = TempData["studentList"] as List<ServiceReference1.Student>;
}
[HttpPost]
公共JsonResult索引(字符串编号)
{
ServiceReference1.WebsiteInterfaceSoapClient APITest=新的ServiceReference1.WebsiteInterfaceSoapClient();
List ListStudents=APITest.CheckIDStudent(“xxxxxxxxxxxx”,number.ToList();
TempData[“studentList”]=ListStudents;
}
[HttpGet]
公共异步任务验证(StudentsDetails用户详细信息、字符串标记点)
{ 
将studentList=TempData[“studentList”]列为列表;
}

您不能为
[HttpPost]
操作执行重定向功能。因此,您必须将
验证
操作方法更改为
[HttpGet]
。并使用
TempData
功能

[HttpPost]
public JsonResult Index(string number)
{
    ServiceReference1.WebsiteInterfaceSoapClient APITest = new ServiceReference1.WebsiteInterfaceSoapClient();
    List<ServiceReference1.Student> ListStudents = APITest .CheckIDStudent("xxxxxxxxxxxxx", number).ToList();
    TempData["studentList"] = ListStudents;
}

[HttpGet]
public async Task<ActionResult> ValidateS(StudentsDetails userDetails, string marksPoint)
{ 
    List<ServiceReference1.Student> studentList = TempData["studentList"] as List<ServiceReference1.Student>;
}
[HttpPost]
公共JsonResult索引(字符串编号)
{
ServiceReference1.WebsiteInterfaceSoapClient APITest=新的ServiceReference1.WebsiteInterfaceSoapClient();
List ListStudents=APITest.CheckIDStudent(“xxxxxxxxxxxx”,number.ToList();
TempData[“studentList”]=ListStudents;
}
[HttpGet]
公共异步任务验证(StudentsDetails用户详细信息、字符串标记点)
{ 
将studentList=TempData[“studentList”]列为列表;
}

为了澄清,您想将
列表学生
提交到
验证()
?您的视图中的模型是什么?从
索引
变量
列表学生
存储在会话或tempData中,并将
更改为
HttpGet
验证
操作,如果您重定向到其他内容,则可以读取。或者另一种方法是在索引上发布后,从该索引操作获取数据,然后再次在另一个操作中发布,该操作为ValidateS,但您必须更改表单操作或使用ajax。为了澄清这一点,您想将
列表学生
提交到
ValidateS()
?您的视图中的模型是什么?从
索引
变量
列表学生
存储在会话或tempData中,并将
更改为
HttpGet
验证
操作,如果您重定向到其他内容,则可以读取。或者另一种方法是,在发布到索引之后,从这个索引操作中获取数据,然后再次发布到另一个操作中,该操作是验证的,但您必须更改表单操作,或者可以使用ajax。