首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XslCompiledTransform引起因福帕特而悲伤

XslCompiledTransform引起因福帕特而悲伤
EN

Stack Overflow用户
提问于 2009-09-24 13:20:39
回答 2查看 618关注 0票数 1

我不是infopath开发人员,这是我第一次真正接触XSLT。最近我不得不做一个项目,在这个项目中,我需要将上传到Sharepoint的infopath表单转换为html。在html中,我们可以使用任何第三方库来输出我们想要的任何想要的/支持的格式。

我们在守则中所做的:

  1. 我们创建了一个XslCompiledTransform对象。这是通过解析上传到sharepoint的Xsn,然后在其中使用Xsl实现的。我们使用View1.xsl。这里没有问题。
  2. 表单作为流返回到我们的转换方法中,在这里我们创建了一个转换需要应用于使用流的XmlDocument。
  3. ,我们然后将XmlDocument传递给transform()方法,以及一个XmlTextWriter对象,后者为我们填充StringWriter对象。然后,我们可以使用StringWriter将html作为字符串或流传递给第三方库,以更改为任何格式,如PDF/MHT等.

转换后出现的问题:

  1. 我失去了DateFormatting。最初设置为1-12-2009的日期将变成2009-1-12
  2. I lose
  3. ,而不是空的图像占位符,其中包含"X“。
  4. I lose html控件。我目前将htmlstream转换成字符串,并有一个通用方法过滤掉任何不需要的html。我的代码中也有一部分可以过滤掉下拉列表中选定的值。这样做,我遇到了一个场景,在html中没有" selected“属性,但是在thr下拉列表中选择了一个值。整个字符串解析不是GRACEFULL,而是A HACK。有更好的方法吗?如果XSN文件中有多个视图,
  5. 如何检测视图。
  6. 是否有一种更简单的转换方式,其中传递xml文档就足够了,有些像XmlForm.CurrentView.Export()方法可以处理我的特定场景。

任何建议,指针等将不胜感激。我很高兴在我的方法清理完之后,发送原始Xml、转换后的Html和Html。

提前谢谢。

穆罕默德。

EN

回答 2

Stack Overflow用户

发布于 2009-09-24 13:45:35

这个问题很大,也很模糊。如果你能把它切成小块,你会得到更好的反应:到底哪里出了问题?如果你确定了哪个阶段导致了哪个问题,并问了一个具体的问题,你就更有可能得到一个可以帮助你的人的回应。

话虽如此,还是有一些一般性的提示可以帮助您入门:

  1. 您的日期时间格式化问题不太可能与XSL相关。XSLT通常不会很好地进行字符串格式化,因此,除非有人在您的"View1.xsl“中编写了一个相当长而复杂的XSLT转换,否则XSLT只是在发出与即将到来的日期相同的日期--所以您的日期问题可能发生在XSLT步骤之前。
  2. 听起来您的图像引用的是断开的链接。输出html可能包含带有指向不存在位置的<img>属性的src标记--找出这些图像应该在哪里,并修复链接。这可能就像在输出html.

中包含一个适当的标记一样简单。

票数 2
EN

Stack Overflow用户

发布于 2009-09-30 23:39:09

这是个有趣的主意。但我不认为你能让它让你满意。从xsn中提取的xsl转换生成的XHTML仅用于在InfoPath中显示。XHTML中内置了相当多的InfoPath特定功能。你可能会得到一些有用的东西,但你会遇到很多坏的或奇怪的显示问题。

例如,主细节功能是用xd:linkedToMaster属性实现的。xd命名空间的URI是http://schemas.microsoft.com/office/infopath/2003

所有对这个命名空间的引用(其中有很多)都实现了InfoPath特定的功能,这些功能不会在任何其他XHTML中实现。

要使此实现工作,唯一的方法是实现xd命名空间在自定义XHTML呈现程序中使用的所有功能。那就祝你好运。

抱歉,我没有好消息。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1471659

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档