将其集成到 ASP.NET Core Web 应用程序中,可实现在您的门户网站内无缝的文档编辑。GroupDocs.Editor Cloud SDK for .NET 提供强大的 API,允许您在服务器上加载、编辑和保存 DOCX 文件。本指南将带您完成必要的设置,展示逐步代码示例,并提供一个完整的示例,您可以在几分钟内运行。完成后,您将能够自信地在 ASP.NET Core 应用程序中添加文档编辑功能。

先决条件和设置

在开始之前,请确保您具备以下条件:

  • .NET 6.0 SDK 或更高版本已安装
  • 如 Visual Studio 2022 或 VS Code 等 IDE
  • 一个 GroupDocs Cloud 账户以获取 Client Id 和 Client Secret
  • 可使用 Windows、Linux 或 macOS 开发机器

将其集成到 ASP.NET Core Web 应用程序中还需要可靠的网络连接到 GroupDocs Cloud 端点,因为所有文档处理都是在远程完成的。请相应地规划您的部署环境。

通过 NuGet 安装 SDK:

dotnet add package GroupDocs.editor-Cloud

从官方发布页面下载最新的包: GroupDocs.Editor Cloud SDK for .NET Download.

使用您的凭据创建配置对象(摘自完整示例):

var configuration = new Configuration
{
    ClientId = "client_id",
    ClientSecret = "client_secret"
};

安装好包并准备好凭据后,您可以继续进行实现。接下来的章节将详细解释每段代码,以便您了解该库如何融入 ASP.NET Core Web 应用程序的整体架构。

将 ASP.NET Core Web 应用程序集成的分步指南

本节将把在 ASP.NET Core Web 应用程序中集成的过程分解为离散的、可管理的步骤。每个步骤都包含直接取自参考实现的简短代码片段。

步骤 1:配置 API 凭据

首先,使用您的客户端详细信息实例化 Configuration 对象并创建 EditorApi 客户端。

var configuration = new Configuration
{
    ClientId = "client_id",
    ClientSecret = "client_secret"
};

var editorApi = new EditorApi(configuration);

EditorApi 类在 API 参考 中有文档。 在大多数场景下,每个请求初始化一次客户端就足够了;您也可以将其注册为 ASP.NET Core 依赖注入容器中的单例,以获得更好的性能。

步骤 2:定义加载选项

使用 LoadOptions 指定源文件和所需的输出位置。此对象告诉服务要打开哪个文档以及将渲染的 HTML 存储在哪里。

var loadOptions = new LoadOptions
{
    FileInfo = new FileInfo { FilePath = "input.docx" },
    RenderOptions = new RenderOptions { OutputPath = "output.html" }
};

LoadOptions、FileInfo 和 RenderOptions 让您可以控制文档在编辑时的渲染方式。例如,您可以设置 RenderOptions 以包含图像、保留原始样式,或限制渲染的页数。

步骤 3:调用 LoadDocument

调用 API 加载并转换文档。在此示例中调用是同步的,但如果您的控制器操作是异步的,也可以使用异步版本。

var loadResult = editorApi.LoadDocument(loadOptions);

LoadDocument 方法返回一个结果对象,其中包含指向渲染后 HTML 的 URL 以及其他元数据。您可以将 loadResult 存储以供以后检索,或直接将 HTML 传递给前端。

第4步:处理加载结果

加载后,您可以将 HTML 提供给前端,或将其存储以供以后使用。此步骤完成 将文档编辑器集成到 ASP.NET Core Web 应用程序 的工作流,并为用户交互准备文档。

在真实场景中,您通常会从控制器操作返回 HTML 内容:

return Content(loadResult.HtmlContent, "text/html");

您可能还想实现缓存,以避免重复重新加载相同的文档,这可以在大规模 集成到 ASP.NET Core web 应用程序 时提升响应时间。

将 Document Editor 集成到 ASP.NET Core Web 应用程序 - 完整代码示例

以下代码演示了从配置到加载 DOCX 文件的完整过程。

var configuration = new Configuration
{
    ClientId = "client_id",
    ClientSecret = "client_secret"
};

var editorApi = new EditorApi(configuration);

var loadOptions = new LoadOptions
{
    FileInfo = new FileInfo { FilePath = "input.docx" },
    RenderOptions = new RenderOptions { OutputPath = "output.html" }
};

var loadResult = editorApi.LoadDocument(loadOptions);

注意: 此代码示例演示了核心功能。在将其用于项目之前,请确保更新所有文件路径和配置值以匹配实际环境,验证已正确安装所有必需的依赖项,并在开发环境中彻底测试。如果遇到任何问题,请参阅官方文档或联系支持团队获取帮助。

使用 cURL 进行 ASP.NET Core 文档编辑集成

如果您更喜欢直接的 REST 方法,可以使用 cURL 命令执行相同的操作。此方法对于快速原型开发或在需要将编辑器集成到非 .NET 编写的服务时非常有用。

1. 认证并获取访问令牌

curl -X POST "https://api.groupdocs.cloud/v2.0/auth/token" \
     -H "Content-Type: application/json" \
     -d '{"client_id":"YOUR_CLIENT_ID","client_secret":"YOUR_CLIENT_SECRET"}'

响应中包含一个在后续调用中使用的 access_token。

2. 上传源文件

curl -X POST "https://api.groupdocs.cloud/v2.0/editor/storage/upload?path=/input.docx" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -F "file=@input.docx"

3. 加载文档进行编辑

curl -X POST "https://api.groupdocs.cloud/v2.0/editor/load" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{
           "fileInfo": { "filePath": "input.docx" },
           "renderOptions": { "outputPath": "output.html" }
         }'

4. 下载渲染的 HTML

curl -X GET "https://api.groupdocs.cloud/v2.0/editor/storage/download?path=/output.html" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o output.html

这些命令演示了如何 在 ASP.NET Core 应用程序中添加文档编辑,无需编写任何 C# 代码,适用于快速测试或与其他服务的集成。欲了解更多详情,请参阅 官方 API 文档。

通过精通 .NET 库和原始 REST API,您在 将其集成到 ASP.NET Core Web 应用程序 时获得灵活性,能够选择最符合您架构的方案。

常见问题

进一步阅读