C#编写ASP.NET Core的Web API并部署到IIS上的详细教程(API用于准确获取Word/Excel/PPT/PDF的页数)2 -获取Word的页数
1.前言
在我前一篇博文《C#编写ASP.NET Core的Web API并部署到IIS上的详细教程(API用于准确获取Word/Excel/PPT/PDF的页数)1 -环境准备及创建项目》中,我介绍了如何为环境Office的DCOM组件,如何安装.NET Core 3.0 SDK,以及如何通过标准模板创建ASP.NET Core的Web API项目等。
而本篇博文,将继续介绍如何编写业务代码,实现获取Word的页数。
2.为项目添加引用
此项目会用到五个包:
- Microsoft.Office.Interop.Word:用于操作Word
- Microsoft.Office.Interop.Excel:用于操作Excel
- Microsoft.Office.Interop.PowerPoint:用于操作PPT
- MicrosoftOfficeCore:Office核心支持
- iTextSharp:用于操作PDF
在“解决方案资源管理器”中,选择“依赖项”,然后右键,选择“添加引用”,或者“管理NuGet程序包”,这里我选择NuGet,如下图:
然后直接搜索并下载即可,如下图:
依次添加后,可以在项目结构的依赖项中,看到新安装的程序包,如下图:
3.获取Word页数的代码
获取Word页数的业务代码,我单独封装成一个Service,其提供如下三种方法:
- 打开Word,读取页数;
- 关闭Word,退出Word程序;
- 杀掉Word的死进程;
为项目新添加一个文件夹名为Service,然后添加WordReader.cs的类,如下图:
代码如下:
using System;
using System.Reflection;
namespace DocReaderWebAPIDemo.Service
{
public class WordReader