MVC怎么做单据类型数据提交?

jain2150 2016-07-01 11:30:38
页面一个单据表格,多行数据,一次性提交。显示多行数据没问题,模型绑定很简单。问题是,现在要新建或者编辑这个单据,如何绑定数据模型。绑定List<Model>,添加或修改的数据无法映射到Model里。Model从页面提出数据依靠表单元素Name与Model属性名对应,那除非Model设成这样 Name1,Price1,Name2,Price2...,太丑陋。不然就用js,json拼接再服务端拆解,或者循环调用web Api更新。但是这样的话,model绑定还有什么意思,mvc的精髓就在model绑定,不用再js操作dom来获取数据,由Model自行管理。这问题很复杂吗,微软干嘛不弄个解决方案出来,这种业务场景很多啊!
...全文
214 7 打赏 收藏 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
中文命名法 2016-07-03
  • 打赏
  • 举报
回复
引用 6 楼 以专业开发人员为伍的回复:
使用 jQueryUI 的 Grid 或者别的什么 Grid,或者(其实)大多数开发中你根本没有必要使用什么 Grid 插件,但是不管怎样,你会发现这些都是前端!这些都是让你废弃 asp.net 处理界面的。你的 asp.net 应该处理的是数据,而不是界面。
请问asp.net现在推荐学哪种模式?
  • 打赏
  • 举报
回复
asp.net mvc 解决不了空间树复杂嵌套、精准响应用户交互事件、自动具有什么“Name、Price”的状态管理(随时自动更新Model值)的功能。其实不是不能做到,而是 webform 已经做的很完美了。结果它被人骂!你就不要再用简陋的手段再造一遍这个车轮子了。
  • 打赏
  • 举报
回复
你说的 mvc 其实是 asp.net mvc,并不是 mvc 本身。而 asp.net mvc 是微软在10 年前为了不负责任地逃避 ajax 潮流(只给 asp.net 中仍了一个 jQuery.js 就完事儿了,就不再深入设计开发了)而模仿 java 中刚流行起来的一个开源小框架而写的,结果其实也帮着成就了那个小框假的流行。 你说的一切需求,其实回到了 webform。你需要界面上的组件有组件树形复杂嵌套结构,你希望组件自动化地能够维系状态更新,甚至在服务器端可以精准地在“行、单元格”范畴上触发更改事件。那么为什么这些年还有这么多人骂webform呢? 先把这个问题放在一边,看看 mvc概念: 在纯粹的前端,有一些 mvc 框架,也有一些更进一步的 mvvm 框架,这些都比 asp.net mvc 的开发效率高10倍。比如微软非常成熟、非常小巧的 ko 框架。实际上自10年前,至少是4、5年前,web页面前端开发越来越向着极好的用户体验的方向技术去发展。假设让你开发一个淘宝购物页面,那么商品筛选分类部分如何动态加载不同的模板?模板上如何动态绑定不同的数据?最主要地,这个“动态”是不刷新页面情况下的啊! 这些开发是根本不用什么 asp.net 来产生界面的啊!这些开发是在浏览器端才产生有差别的 html 的啊。在服务器上只要保存静态的片段 html 文件作为模板即可。然后 asp.net 只是下载数据,更新数据。不需要产生 html。 也就是说,回到开头我的回答,其实 asp.net 不论是 webform 还是 mvc 都是废物。而纠结 asp.net mvc 是一个歧路,你使用 asp.net 就应该是做web前端的后台支撑,而不是做界面。
  • 打赏
  • 举报
回复
使用 jQueryUI 的 Grid 或者别的什么 Grid,或者(其实)大多数开发中你根本没有必要使用什么 Grid 插件,但是不管怎样,你会发现这些都是前端!这些都是让你废弃 asp.net 处理界面的。你的 asp.net 应该处理的是数据,而不是界面。
  • 打赏
  • 举报
回复
每当用户录入一个数据(例如下拉选择一个商品,或者修改一下采购数量),你都能看到用户交互应该有多么迅速、多了舒服!因此编程设计必定是精细的、有状态的、事件驱动的。webform 是这方面的框架,但是它只适合10年前的web 潮流,不适合2010年以后的。 但你若纠结于 asp.net mvc ,虽然它没有什么精细的 UI 端编程框架,但是也基本上都是多余的。因为你若要开发一个用户体验很好、响应迅速、“舒服的”web交互应用,那么其实 asp.net webform 或者 asp.net mvc 对你来说都是一样的!你就没有必要发这样的帖子,而且你的公司若招聘 asp.net 程序员时千万不要扯什么“mvc”。你要的是前端 mvvm 或者 mvc,而并不需要 asp.net mvc。
  • 打赏
  • 举报
回复
在前端的mvc或者更好的mvvm编程开发中,用户录入一个单元格,那么数据(不管叫做mode还是叫做 viewmodel)都立刻更新了。用户录入一行,那么数据也立刻更新了。例如看看 http://knockoutjs.com/examples/cartEditor.html,你可以看到,没有问题,用户交互任何操作都实时改变了数据、保存了数据。 所以你的问题不在于 asp.net mvc 怎样怎样,而在于这是前端开发技术还是 asp.net 开发技术。asp.net 一遍遍刷新页面来处理页面单行、单个单元格数据,哪种方式的用户体验是不能用的。

62,270

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧