C# 每次刷新页面时是否在前端添加数据?
我在ASP.NET MVC中有一个应用程序,它有一个简单的表单,可以从文件中读取数据,并在浏览器中显示表单中的数据。问题是,每次我刷新浏览器时,文件中的数据都会再次添加到前端。这是我遇到问题的控制器:C# 每次刷新页面时是否在前端添加数据?,c#,asp.net,C#,Asp.net,我在ASP.NET MVC中有一个应用程序,它有一个简单的表单,可以从文件中读取数据,并在浏览器中显示表单中的数据。问题是,每次我刷新浏览器时,文件中的数据都会再次添加到前端。这是我遇到问题的控制器: public ActionResult Main(BankingModel _bm) { ViewBag.List = IO.Read(); return View(_bm); } IO.Read从文件中读取数据,将其存储
public ActionResult Main(BankingModel _bm)
{
ViewBag.List = IO.Read();
return View(_bm);
}
IO.Read从文件中读取数据,将其存储在Viewbag中并发送到视图。但每次我刷新页面时都会调用控制器,并且浏览器中的数据会保留下来,从而产生重复的值。有没有办法,当我刷新浏览器时,要同时刷新表单中的前端视图数据?关于您的特定案例,您没有初始化
列表的新实例,这导致数据始终附加到列表中。解决方法是在Read
方法中初始化列表的新实例:
publicstaticlist lst=newlist()
为了清除您的ViewBag
,因为ViewBag
在刷新时维护数据,您可以调用ViewData.clear()代码>在控制器方法中,因为ViewBag
在内部使用它。您可以调用ViewData.Clear()代码>在控制器方法中,因为ViewBag
在内部使用它。我尝试在ViewBag.List=IO.Read()之前使用ViewData.Clear();命令和我仍然有相同的问题。你能给我看一下你的视图
代码吗?您正在使用ViewBag将BankingModel类型发送到视图。我想看看你是如何展示它的。否则,我建议您使用TempData[“List”]=IO.Read()代码>因为ViewBag也会在刷新时维护数据,但TempData会在渲染一次后进行处理。我尝试使用TempData,但没有效果。以下是视图:谢谢Rahul,我在您键入响应时也意识到这是问题所在:)。也许您可以将其添加为答案,以便我可以将其标记为正确:)。