我正在開發MVC應用程序。從MVC5的同一控制器中的一個操作方法獲取空值到另一個操作方法
我試圖從同一個控制器CityWiseAreaList傳遞cityid到_CreateCityWiseArea操作方法。
但數據通過不正確。
_CreateCityWiseArea
獲取空值的操作方法。
請檢查下面的代碼...
這是我的區域控制器:
public ActionResult CityWiseAreaList(int cityid)
{
if (cityid == 0)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
var data = db.Areas.Where(x => x.CityID == cityid).ToList();
//TempData["ID"] = cityid;
RedirectToAction("_CreateCityWiseArea", new RouteValueDictionary(
new { controller = "Area", action = "_CreateCityWiseArea", id = cityid }));
return View(data);
}
public ActionResult _CreateCityWiseArea(int? id)
{
// var cityid = Convert.ToInt32(TempData["ID"]);
if (id == 0)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
var Name = db.Cities.Where(c => c.CityID == id).Select(x => x.CityName).FirstOrDefault();
ViewBag.message = Name;
return View();
}
//Add Area to Corresponding city
// POST: Area/Create
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult _CreateCityWiseArea(Area area)
{
if (ModelState.IsValid)
{
db.Areas.Add(area);
db.SaveChanges();
return RedirectToAction("CityWiseAreaList");
}
ViewBag.CityID = new SelectList(db.Cities, "CityID", "CityName", area.CityID);
return PartialView(" ~/Views/Area/_CreateCityWiseArea.cshtml", area);
}
我使用Redirectoaction
,tempdata
方法傳遞價值,但時間都空值即將到來。
。 –
在你的第一個動作結果'CityWiseAreaList'中,你實際上並沒有返回'RedirectToAction'。除非一些代碼丟失? – Valeklosse
如果我寫返回到RedirectionToAction然後在返回視圖無法訪問的代碼錯誤。其實我想顯示區域名稱對應的城市和時間我想通過** cityid **到** _ CreateCityWiseArea **操作方法。@ Valeklosse, @ J.Steen – Ash