【问题标题】:Ispostback likething in MVC 4 ASP.Net RazorIspostback likething in MVC 4 ASP.Net Razor
【发布时间】:2014-10-14 15:14:58
【问题描述】:

我的网页在我想显示 temp_data 中的所有记录的同时从客户那里获取列表。问题是我必须为表提供相同的 ID,以便我可以根据 ID 获取数据。所以请告诉 MVC 中的 Ispostback (webforms) 之类的内容

我想保留 id 变量以提供相同的 id,但它在每个帖子中都会更改。请帮帮我

{

    RMS_DataContext db = new RMS_DataContext();
    Order cls_order = new Order();
    string id = Guid.NewGuid().ToString();

        public ActionResult Index()
        {
            return View();
        }

        public ActionResult Create()
        {
            return View();
        }

        [HttpPost]
        public ActionResult Create(FormCollection form, string btn_orders)
        { 

            switch (btn_orders)
            {       
                case "btn_temp":
                    Item item = new Item();

                    var ItemId = form["_OrderId1"];
                    item = db.Items.FirstOrDefault( x=> x.ItemId==ItemId );
                    cls_order.Add_Temp(id, item, Convert.ToInt32(form["quantity"].ToString())); 

                    return View();
                    break;

                    default:
                    return View();
            }
        }

}

【问题讨论】:

标签: asp.net asp.net-mvc asp.net-mvc-4


【解决方案1】:

您在控制器中创建一个单独的操作来处理POST 操作,这本质上是来自网络表单的“回发”。然后,您将处理您在 Postback 中处理的 POST 中的任何项目。

如果您正在处理验证,请务必检查 ModelState.IsValid 并再次将您的模型返回到您的视图,然后应该会显示验证错误

public ActionResult Edit()
{
   var model = new EditModel() { Id=Guid.NewGuid() };
   return View(model);
}

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Edit(EditModel model) 
{
   if (ModelState.IsValid) {
      // do stuff when valid
      return RedirectToAction("Index"); //or whatever when you're done saving, etc...
   }

   return View(model);
}

在你看来:

@Html.HiddenFor(x=>x.Id);

【讨论】:

  • 我的情况是 ADD ,我在字符串 ID_ 中生成 GUID,而不是在每个插入中我想保存相同的 ID_ 以便我可以获得此 ID_ 的所有数据,字符串 ID_= Guid.NewGuid() .ToString(); ....所以当有帖子时它会生成新的 id .....我希望 ISpostback 喜欢保留这个 GUID
  • 然后使用 Guid 而不是 int,并将其用作您的 id,它将始终在 url 中发布
  • 刚刚看到您的编辑...控制器不是静态的,因此 Id 每次都会包含一个新的 Guid。您需要将其分配到您的模型上并将其保存在隐藏字段中并将其与您的其他数据一起发布,或者使用我上面的建议
  • 你能不能写一些代码让我明白你的想法。
  • 我根据您的编辑进行了更新,存根代码,丢失了您发布的代码
猜你喜欢
  • 2010-10-21
  • 2012-12-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-15
相关资源
最近更新 更多