I'm getting a peculiar error after adding a line to my XSLT used in my DVWP. I can't paste all my XSL here but let me explain like so:
- I have an .xslt file with 284 lines
- My DVWP references it through the XslLink property
- The DVWP is added to a WebPart page
- The page loads fine
So far so good...
- I add one
xsl:value-ofline to my XSLT
- It really doesn't matter what the line is
- It can be
<xsl:value-of select="@someField" />
- It can be
<xsl:value-of select="substring-after(@anotherField, '.')" />
- The page will now show an error:
Unable to display this Web Part. To troubleshoot the problem, open this Web page in a Microsoft SharePoint Foundation-compatible HTML editor such as Microsoft SharePoint Designer. If the problem persists, contact your Web server administrator.
- If I remove everything from the XSLT and leave just that one line then there is no
- If I remove other lines (say 30 of the 284) and keep that one line then there is no error
So I'm 100% sure it has nothing to do with what line I'm adding or the XSLT.
I looked through the SharePoint logs for the correlation ID of the error I'm getting and compared with the logs of when I don't have the error.
I'm no expert at reading SP logs but there are only two main differences I see. The error log has these two entries:
Videntityinfo::isFreshToken reported failure.
Error while executing web part: System.BadImageFormatException: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B) at <xsl:template match="Row">(XmlQueryRuntime , XPathNavigator ) at <xsl:apply-templates>(XmlQueryRuntime , XPathNavigator ) at <xsl:template name="nacho">(XmlQueryRuntime , XPathNavigator ) at Root(XmlQueryRuntime ) at System.Xml.Xsl.XmlILCommand.Execute(Object defaultDocument, XmlResolver dataSources, XsltArgumentList argumentList, XmlWriter writer, Boolean closeWriter) at System.Xml.Xsl.XmlILCommand.Execute(IXPathNavigable contextDocument, XmlResolver dataSources, XsltArgumentList argumentList, XmlWriter results) at System.Xml.Xsl.XslCompiledTransform.Transform(IXPathNavigable input, XsltArgumentList arguments, XmlWriter results) at Microsoft.SharePoint.WebPartPages.DataFormWebPart.ExecuteTransform(XslCompiledTransform xslCompiledTransform, XsltArgumentList xmlArguments, Boolean bDeferExecuteTransform) at Microsoft.SharePoint.WebPartPages.DataFormWebPart.PrepareAndPerformTransform(Boolean bDeferExecuteTransform)
(It was actually split in two lines and not formatted so I cleaned it up for readability.)
According to what I've read online
Videntityinfo is a permission error and
System.BadImageFormatException is trying to use a x32 DLL in place of an x64 DLL.
What I cannot figure out is how it could be either of those issues if the page loads fine other times.
Or is there something else maybe wrong?