我刚刚爱上了ASP.NET MVC的世界,我最喜欢的部分之一是我可以拥有强类型视图,当我将数据提交到服务层时,我所有的一切要做的就是提交模型对象并完成它。
这与我去年制作的相对大规模的WebForms应用程序形成鲜明对比。这个应用程序的问题是客户端需要(想要)每个表超过150个字段用于他们的两个表(越来越令人沮丧的是字段“名称”是数字,但这是另一个故事)。
我发现自己(以多种形式)做的事情如下:
Dim bfs As New BusinessForSale
With bfs
.123 = txt123.Text
.124 = txt124.Text
''# etc
''# etc
''# 148 more bloody times
End With
''# Yes it was that frigging frustrating.
然后我可以将bfs对象提交给数据库。
现在在MVC中,该模型为我完成了所有这些。
我做错了吗?有没有办法(不是我会回到WebForms,但仅仅是为了我自己的知识)向数据库提交表单“模型”而不是像这样单独设置每个参数?由于单调,这是我最痛苦的编程经历。
答案 0 :(得分:1)
您实际上可以为Web表单构建这些组件;它们不存在于现有框架中。我有同样的想法,为什么在一些反思过程可以为我做的时候写下所有代码。我一直在尝试将其用于我的Nucleo MVP框架(http://nucleo.codeplex.com),这将成为我的焦点之一(即使是AJAX回发也是如此)。但是我离题了,抱歉插头。
无论如何,您可以构建将控件ID与类中属性名称匹配的反射片。它不能像你在ASP.NET MVC中看到的那样自动(因为管道中的核心差异),但它可能就像启动该过程的方法调用一样简单。
HTH。
答案 1 :(得分:1)
This可以为您提供有关如何实现与强类型视图类似的内容的一些想法。