我正在寻找一些从Silverlight 4应用程序中以编程方式创建Word文档的选项。我发现两种方法起初似乎很有希望,但看起来不会起作用。
OpenXML SDK 目前,OpenXML SDK不适用于Silverlight。
通过COM Interop进行Word自动化
dynamic wordApplication = AutomationFactory.CreateObject("Word.Application");
显然,这要求Silverlight 4应用程序被授予使用提升权限运行的权限,该权限仅适用于浏览器外应用程序(我们的应用程序不是)
我的另一个想法是将请求移交给没有这些限制的后端服务。在走这条路之前我想检查一下任何想法。
答案 0 :(得分:2)
答案 1 :(得分:2)
后端服务是可行的方法。无论是Open XML SDK(简单方法)还是System.IO.Packaging
(更难的方式)都可以从Silverlight获得,因此服务器端生成是唯一真正的选择。你可以自己做(这是我的偏好),或使用OfficeWriter或Sharp Shooter等工具(在另一个答案中提到)。后端解决方案的优点是你不会让任何人用反射器等工具反编译你的Word创建代码。