使用asp.net mvc开发应用程序,页面中的page.IsPostback还有用处吗?
本来我对asp.net mvc也研究了一段时间了,我也使用了asp.net mvc开发了两套应用程序,虽然都不是什么大的系统。
今天也想特别提出一个疑问,不知道是我不知道呢,还是本身很难实现在asp.net mvc中像Page中的IsPostBack这样的属性,目前在asp.net mvc里是已经失去作用了,让一些本身一次性绑定或赋值的都不需要在次获取数据,而现在都需要重新获取数据。在次刷新就不会重新获取的数据(特别是从数据库中重新获取),现在也要重新读取了,不知道asp.net mvc在Action中是否有判断同一个Context第二次请求是否不需要刷新整个页面?
还是看一下效果吧。看看启动的当前页面
刷新该页面效果还是如图:如果我在页面这里还需要从数据库里获取一些数据,这样其实对性能会带来一些影响。
本来我也知道在asp.net mvc中对服务器控件的功能都没有一个很好的支持,例如一些自动回传,服务器上的事件模型,有些都将无法使用,(有些在首次载入的时候是可以用服务器控件的事件的,如:Repeater的绑定事件),可以说只要是有回传才能响应服务器事件的那些控件事件都已经无法使用。数据控件也只能做到数据显示和数据布局的显示了,当然现在asp.net mvc框架里有一些开源的Helper类,能为我们提供很多帮助。但是那样使用asp.net mvc开发的时候了,很多时候都会让我想到用asp做开发一样,很多服务器代码很多都会嵌套在html代码里,显得有一些杂乱无章,当然我不是在说asp.net mvc框架开发应用程序会不好。asp.net mvc和asp.net webform各有各的好处。不能一棒子打死所有人,只是提出来也结合大家的思维如何看待这种问题。集思广义,一起研究,一起学习。
其实像asp.net webform也有设计一些优秀的方法,我不知道asp.net mvc在设计的时候有没有考虑到asp.net 上之前优秀的设计。要是在action中就能够判断是否同一个请求,然后不需要重新生成一个View,那样也可以降低刷新给服务器带来的压力。像isPostPack这样的真的对于我们来说真的是很有用,不可能不防止别人不停的刷新。因为我入行也没有多久,技术很菜,如果有大牛知道该方法的问题,或者有很好的对于开发asp.net mvc性能上的好的解决方法,都可以介绍给我,本人热忠于技术,给我介绍有关知识的园友,在这里谢谢了。