我正在开发ASP .NET MVC应用程序,我的表示层有问题。我使用Razor作为视图引擎。+
我正在为三个表开发CRUD应用程序。表有自动增量键。
首先我必须在第一张表中输入数据。然后我必须在第二个表中输入数据并将其存储在某个列表中并在视图中显示网格。该网格必须具有编辑和删除列。我有一个按钮添加第二个表继续在第二个表的下一行(在网格中)输入数据。我必须在所有输入结束时将数据保存在数据库中。
当我没有密钥时,如何在网格中编辑这些行,因为我没有将它们保存在数据库中?我的想法是给他们一些虚拟身份证。
我不能作为对象项传递给控制器整行?
我对这个应用程序的UI计划是让ViewModel将这三个模型作为参数,将一个List作为多个模型。然后,有四个视图,三个用于模型,一个用于模型和网格视图。
这是个好主意吗?
所有三个模型都具有相同的ViewModel作为视图模型,并且我在视图之间传递该模型时遇到问题。所以我不知道我的计划错了吗?
当您必须添加和编辑许多表并最终存储数据库中所有表的数据时,这种问题的解决方案是什么?
我希望我能很好地解释我的问题。谢谢。
答案 0 :(得分:1)
你可以使用guid作为id
Guid.NewGuid();
它可以解决您的身份问题 关于模型,可以使用3个列表作为模型属性 或者,如果数据很大,则使用ajax分别加载这三个列表。
您可以将这些数据存储在会话中但是如果Web服务器(iis)突然重新启动应用程序池或服务器关闭会发生什么?
最好将数据保存在某个数据库中(如果不值得在sql中创建表,可以使用一些nosql存储作为redis或mongodb)