我正在寻找有关其他人在其ASP.NET项目中使用的反馈,以提供丰富的用户界面体验,同时保持尽可能高效。
我正在开发基于ASP.NET 3.5 Web的应用程序,但我希望尽可能丰富这个项目中的UI。
最小化回发和整页翻新
在适当情况下使用AJAX
能够将自己的主题/皮肤应用于任何第三方组件。
我非常擅长CSS / Javascript,在Jquery中获得越来越多的熟练并且对ASP.NET非常了解。然而,就Xhtml和客户端技术而言,我必须意识到,并非所有参与未来项目的人都会在Xhtml / CSS / Script方面崭露头角。因此另一个关键要求是
目前我正在研究沼泽标准搜索编辑类型屏幕,例如搜索一些数据并向下钻取和编辑。使用ListView / GridView开箱即用,没有AJAX,因为用户体验太差了。
但我在三种不同的选择之间挣扎。
无论如何,正如我所说,这个问题的目的是尝试了解其他人在他们的ASP.NET项目中使用的内容,以提供丰富的用户界面体验,同时尽可能保持高效。
答案 0 :(得分:2)
对于网格,您可以使用DataTables。它具有多列过滤和排序,基于行的事件,分页,并且可以使用DOM或通过Ajax调用接受数据。
如果您正在寻找jQuery和回发周期的良好资源,您应该阅读Dave Ward的blog。他介绍了有关PageMethods和Web服务的不同技术。
您还对mirco-templates感兴趣,您可以使用jTemplates之类的模板语言来处理DOM的客户端更新。使用这种技术可以减少对ViewState和回发的依赖。
最后,有一个名为SimplyModal的好插件可以让你创建模态对话框。这是一个good示例。
答案 1 :(得分:1)
我们使用updatepanels和raw ajax的组合。
Updatepanels就像你说的那样效率不高,但是当需要刷新大部分屏幕时,它们很不错。
对于javascript / ajax,我们主要使用jQuery(完全可爱),并使用MS Asp.Net Ajax与Web服务器上的Web服务进行通信。 Web服务通常返回我们自己的自定义ServiceResult对象,该对象标记为[DataContract(Namespace = "")]
,其属性标记为[DataMember]
。当这些对象在js侧被接收时,它们是js-objects。其中一个道具是datacontainer,它是一个json序列化的对象,可以使用
Sys.Serialization.JavaScriptSerializer.deserialize(resultObject.ResultString)
答案 2 :(得分:1)
你有预算吗?我们在雇主处使用Telerik AJAX组件,并对功能和性能非常满意。