C# 如何将值从一个控制器方法传递到另一个控制器方法?
我是MVC3的初学者,我想从另一个控制器的方法中获取一个值。这里有两种方法:C# 如何将值从一个控制器方法传递到另一个控制器方法?,c#,asp.net-mvc-3,C#,Asp.net Mvc 3,我是MVC3的初学者,我想从另一个控制器的方法中获取一个值。这里有两种方法: [HttpPost] public ActionResult Create(TennisClub tennisclub) { if (ModelState.IsValid) { db.TennisClubs.Add(tennisclub); db.SaveChanges(); return R
[HttpPost]
public ActionResult Create(TennisClub tennisclub)
{
if (ModelState.IsValid)
{
db.TennisClubs.Add(tennisclub);
db.SaveChanges();
return RedirectToAction("AssignManager");
}
return View(tennisclub);
}
[HttpPost]
public ActionResult AssignManager(Manager manager)
{
}
所以,当我创建一个新的网球俱乐部时,我想立即指派一名经理来管理它。。。为此,我需要主键“ID”
所以我的问题是:如何在我的“AssignManager”方法中获得这个ID?提前感谢您无法重定向到使用[HttpPost]
属性修饰的操作。重定向不是这样工作的。重定向意味着您正在向具有新位置标头的客户端发送301 HTTP状态代码,并且客户端向该新位置发出GET请求
因此,从AssignManager操作中删除[HttpPost]
属性后,可以将id作为参数传递:
return RedirectToAction("AssignManager", new { id = "123" });
然后:
[HttpPost]
public ActionResult AssignManager(int id)
{
}
无法重定向到使用[HttpPost]
属性修饰的操作。重定向不是这样工作的。重定向意味着您正在向具有新位置标头的客户端发送301 HTTP状态代码,并且客户端向该新位置发出GET请求
因此,从AssignManager操作中删除[HttpPost]
属性后,可以将id作为参数传递:
return RedirectToAction("AssignManager", new { id = "123" });
然后:
[HttpPost]
public ActionResult AssignManager(int id)
{
}
您还需要从操作中删除[HttpPost]
属性
public ActionResult AssignManager(int id) {
//...
}
您还需要从操作中删除[HttpPost]
属性
public ActionResult AssignManager(int id) {
//...
}
基本上,您还需要一个
GET
AssignManager方法,该方法将有一个参数告诉它应该将管理器分配给哪个tenniscrub
:
[HttpGet]
public ActionResult AssignManager(int tennisClubId)
{
// here, you will want to return AssignManager view
}
当从Create
重定向到AssignManager
时,您可以指定tenniscrub
的id:
return RedirectToAction("AssignManager", new { tennisClubId = tennisclub.Id });
基本上,您还需要一个
GET
AssignManager方法,该方法将有一个参数告诉它应该将管理器分配给哪个tenniscrub
:
[HttpGet]
public ActionResult AssignManager(int tennisClubId)
{
// here, you will want to return AssignManager view
}
当从Create
重定向到AssignManager
时,您可以指定tenniscrub
的id:
return RedirectToAction("AssignManager", new { tennisClubId = tennisclub.Id });
为什么不在添加网球俱乐部时指定经理呢?因为我需要在将其指定给网球俱乐部之前创建经理,对不起,我忘记了这个细节…Francesco,通过引用指定即可,数据上下文将为您记录此内容。为什么不在添加网球俱乐部时在此处指定经理?因为我需要在将其指定给网球俱乐部之前创建经理,抱歉,我忘记了此详细信息…Francesco,通过引用指定,数据上下文将为您记录此内容。感谢您的回复+1感谢您的回复+1感谢您的回复+1感谢您的回复+1感谢您的回复+1感谢您的回复+1