如何在 .net 中嵌入 word 文档
How to embed a word document in .net
我正在尝试在我的项目中嵌入一个 word 文档。此文档将用作特定图书馆的模板。
我使用 Project | Add Existing Item...
添加了文件,我还将其 Build Action 设置为 Resource及其复制到输出目录到不复制.
现在在我后面的代码中,我这样做是为了访问文件:
var template = DocX.Load("pack://application:,,,/doc1.docx");
但我得到一个异常:发生了 XamlParseException。
我做错了什么?
您需要使用Assembly.GetManifestResourceStream
method从资源中获取文档流,如下例所示:
var assembly = Assembly.GetExecutingAssembly();
var resourceName = "MyNamespace.doc1.docx" // check your resource name.
using (Stream stream = assembly.GetManifestResourceStream(resourceName))
{
var template = DocX.Load(stream);
}
另请查看此信息:How to embed and access resources by using Visual C#
并且还将构建操作更改为嵌入式资源。
我正在尝试在我的项目中嵌入一个 word 文档。此文档将用作特定图书馆的模板。
我使用 Project | Add Existing Item...
添加了文件,我还将其 Build Action 设置为 Resource及其复制到输出目录到不复制.
现在在我后面的代码中,我这样做是为了访问文件:
var template = DocX.Load("pack://application:,,,/doc1.docx");
但我得到一个异常:发生了 XamlParseException。
我做错了什么?
您需要使用Assembly.GetManifestResourceStream
method从资源中获取文档流,如下例所示:
var assembly = Assembly.GetExecutingAssembly();
var resourceName = "MyNamespace.doc1.docx" // check your resource name.
using (Stream stream = assembly.GetManifestResourceStream(resourceName))
{
var template = DocX.Load(stream);
}
另请查看此信息:How to embed and access resources by using Visual C#
并且还将构建操作更改为嵌入式资源。