安装

将 Doconut 添加到您的 .NET 8 项目

适用于 .NET 8 的基础 Doconut 查看器作为一个 NuGet 包提供,可插入任何 ASP.NET Core 应用程序。可选插件使用单独的包。本页安装基础包并注册中间件——在首次渲染之前所需的最小配置。

安装软件包

bash
dotnet add package Doconut.NET8

未指定版本的命令会安装最新的稳定版。若要精确复现当前的 26.7.0 版本,请将版本号作为单独的选项传入:

bash
dotnet add package Doconut.NET8 --version 26.7.0

Doconut.NET8 是包的标识符。.26.7.0 后缀属于下载的 Doconut.NET8.26.7.0.nupkg 文件名,并不属于标识符的一部分。

注册 Doconut

AddDoconut() 是唯一的注册入口点——只有一个重载,它会将 Viewer 服务、许可证服务以及渲染基础设施注入到 DI 容器中。

完成设置需要调用两个中间件,且它们的顺序很重要:UseDoconutResources() 必须在 UseDoconut() 之前运行。UseDoconut() 是终止中间件,因此如果先调用它,所有对 /doconut-res 资源的请求都不会到达资源处理程序,导致 404。还需要进行会话绑定——Doconut 的默认文档安全会对每个页面请求进行 ASP.NET 会话状态验证。

csharp
builder.Services.AddDoconut(options =>
{
    options.LicensePath = "Doconut.Viewer.lic";
});
builder.Services.AddSession(); // Doconut document security rides on ASP.NET session state

app.UseSession();          // call UseSession() before UseDoconut()
app.UseDoconutResources(); // must be registered before UseDoconut()
app.UseDoconut();

所有选项

DoconutOptions 接受以下可设置的属性。每个属性都是可选的——如果属性未设置,则使用下表中的默认值。

属性默认值描述
ShowDoconutInfofalse当设为 true 时,未携带 token 的请求会返回版本横幅而不是 404。可用于快速检查;生产环境请关闭。
UnsafeModefalse当设为 true 时,页面请求会跳过 ASP.NET 会话安全检查。生产环境请关闭。
MiddlewarePath"/doconut"页面-图像端点的协调路径。虽然会进行验证,但它本身不会挂载分支;请保持与实际的 UseDoconut() 映射以及客户端 BasePath 对齐。
ResourcesPath"/doconut-res"嵌入的 JS/CSS/图片资源的提供路径。
LicensePath"" (empty string)许可证文件的路径。为空表示会继续查找下一个来源,然后自动搜索。
LicenseContent"" (empty string)原始许可证内容——可来自环境变量、密钥管理器或数据库。
LicenseStreamnull以流的形式提供许可证,在启动时读取一次。
ResetLicensefalse保留的兼容性标志。当前的 .NET 8 服务在 AddDoconut() 时读取许可证;更换许可证后请重启应用。

当设置多个来源时的许可证优先级顺序为:LicenseStream 优先于 LicenseContent,后者优先于 LicensePath,再后者优先于自动搜索——参见 License Setup

csharp
builder.Services.AddDoconut(options =>
{
    options.LicensePath     = "Doconut.Viewer.lic";
    options.MiddlewarePath  = "/doconut";     // coordinate with app mapping and client BasePath
    options.ResourcesPath   = "/doconut-res"; // where the viewer's JS/CSS/images are served from
    options.UnsafeMode      = false;          // keep session security on
    options.ShowDoconutInfo = false;
});

下一步

  • 快速入门 — 打开您的第一个文档并在浏览器中渲染。
  • 许可证设置 — Doconut 查找许可证文件的位置。

此页面有帮助吗?