自定义查询List或DataView的思路

  1. 直接查询ListViewWebPart
    1. 使用SharePoint带的各种FilterWebPart与List进行连接.
    2. 用VS做自定义的WebPart,然后通过WebPartZone找到包含在里面的ListWebPart,通过设置其CAML查询来实现过滤.
  2. 直接查询DataViewWebPart
    1. 使用SharePoint带的各种FilterWebPart与其进行连接,此方法在<SharePoint Server 2007宝典>中的P319中有介绍.
    2. 使用Form WebPart:这种方式包含在Form中的各个控件只能是HTML的客户端控件,所以在诸如像填充DropDownList这种操作只能用JS来实现,而填充的值可能需要从服务器获取,还是挺麻烦的.另外,设置的条件也是死的,例如name=[name]这种关系,如果需要在用户没有输入相应的条件时而乎略某些过滤条件,就不能实现了.(因为过滤条件是直接写在服务端控件的selectCommand属性里的).而如果使用XSLT查询,则可能会通过XPath实现条件的动态设置,但是由于是从数据库中取出所有的数据后,再经过服务器端通过XLST进行过滤后输出相应的HTML给客户端,所以性能上会有损失.
    3. 使用内嵌代码:http://msdn.microsoft.com/zh-cn/library/bb862025.aspx,使用这种方式,将损失安全性,但是可以向表单中添加相应的服务器端控件,然后通过设置Form WebPart的selectcommand属性来动态的设置过滤条件.
posted @ 2010-01-29 10:25  吴东雷  阅读(389)  评论(0编辑  收藏  举报