我使用的是CQWP(内容查询web部件),获取日历列表,我想过滤我的结果(customqueryoverride - usign CAML)。但是,日历列表中的一些字段对我来说是隐藏的。
我想知道日历列表中的所有字段。
我想出的解决方案是使用标识转换XSL来显示我的所有属性及其值,并将所有字段添加到CommonViewFields属性。
<property name="CommonViewFields" type="string">
EventDate,DateTime;EndDate,DateTime;fRecurrence,Boolean
</property>
问题是我不知道字段名…我可以使用任何通配符吗?(%%%
和***
不工作)任何其他获得所有字段名称的方法也可以工作
注释: 这是为了理解和处理循环事件
使用SharePoint 2010管理器(http://spm.codeplex.com/)工具。它为你提供了关于你的SharePoint平台的所有层次的大量细节,甚至是列表中的字段。它将为您提供所有字段的详细信息,包括CommonViewFields需要使用的内部名称。
要打印CQWP中所有可用的字段名,可以使用以下XSLT:
<xsl:for-each select="@*">
Field Name :<xsl:value-of select="name()" />
</xsl:for-each>
应该放在ItemStyle中。用于项目呈现的XSL内部模板
对此使用标记,在main XSL中注释主模板并添加为template match="/":
<xsl:template match="/ ">
<textarea cols="50" rows="15" dir="ltr">
<xmp><xsl:copy-of select="*"/></xmp>
</textarea>
现在CQWP将显示完整的查询响应XML