今天要在office 365实现一个页面显示指定列表的一条记录内容,这个需求也不复杂,直接创建页面,然后插入displayform,加个querystring参数,打算就这样搞定,但现实总是很骨感的,出错了
怎么试都会出错,然后就改为自己加入datasource,再放个表单什么的进行绑定,还是出错
Sorry, something went wrong
No item exists at xxx/Pages/Untitled_2.aspx?id=4. It may have been deleted or renamed by another user.
页面的数据源和绑定代码如下
<View Name="{74D13C73-CD04-4E43-9085-BDAD16FFACA1}" MobileView="TRUE" Type="HTML" DisplayName="StdView" Url="/Lists/xxx/StdView.aspx" Level="1" BaseViewID="1" ContentTypeID="0x" ImageUrl="/_layouts/15/images/generic.png?rev=35">
<Query>
<Where>
<Eq>
<FieldRef Name="ID"/>
<Value Type="Integer">{id}</Value>
</Eq>
</Where>
</Query>
<ViewFields>
<FieldRef Name="LinkTitle"/>
<FieldRef Name="Date"/>
<FieldRef Name="ID"/>
</ViewFields>
<RowLimit Paged="TRUE">30</RowLimit>
<Aggregations Value="Off"/>
<JSLink>clienttemplates.js</JSLink>
<XslLink Default="TRUE">main.xsl</XslLink>
<Toolbar Type="Standard"/>
</View>
</XmlDefinition>
<parameterbindings>
<ParameterBinding Name="id" Location="QueryString(id)" DefaultValue=""/>
<ParameterBinding Name="dvt_sortdir" Location="Postback;Connection"/>
<ParameterBinding Name="dvt_sortfield" Location="Postback;Connection"/>
<ParameterBinding Name="dvt_startposition" Location="Postback" DefaultValue=""/>
<ParameterBinding Name="dvt_firstrow" Location="Postback;Connection"/>
<ParameterBinding Name="OpenMenuKeyAccessible" Location="Resource(wss,OpenMenuKeyAccessible)"/>
<ParameterBinding Name="open_menu" Location="Resource(wss,open_menu)"/>
<ParameterBinding Name="select_deselect_all" Location="Resource(wss,select_deselect_all)"/>
<ParameterBinding Name="idPresEnabled" Location="Resource(wss,idPresEnabled)"/>
<ParameterBinding Name="NoAnnouncements" Location="Resource(wss,noXinviewofY_LIST)"/>
<ParameterBinding Name="NoAnnouncementsHowTo" Location="Resource(core,noXinviewofY_DEFAULT)"/>
<ParameterBinding Name="AddNewAnnouncement" Location="Resource(wss,addnewitem)"/>
<ParameterBinding Name="MoreAnnouncements" Location="Resource(wss,moreItemsParen)"/>
</parameterbindings></WebPartPages:XsltListViewWebPart>
由于 office 365上面不能通过错误id查看日志,灰常的麻烦,所以只能自己想办法,我发现可能是这个名字改的不够漂亮,然后我将它改为aid,再运行就通过了
页面请求的格式如下:xx.aspx?aid=4《《这个可以正常的过滤 出结果。。。
然后又顺便测试一下?id=4的情况,出错了
所以,这个故事告诉我们,名称一定要改漂亮些,这样运气就会好些!