【对比测评】 .NET 应用的 Web 视图控件:DotNetBrowser 或 EO.WebBrowser

您是否需要 .NET 应用的 Web 视图控件?.NET 生态系统提供了很多东西,有免费的 Web 视图控件,既有开源的,也有专有的。还有一些商业 Web 视图 控件,也是企业经常选择的一种选项。

在这篇博文中,我们比较了商业解决方案:DotNetBrowser 和 EO.WebBrowser。

DotNetBrowser是一个.NET库,允许将基于Chromium的WPF和WinForms组件嵌入到.NET应用程序中,以显示使用HTML5,CSS3,JavaScript,Silverlight等构建的现代网页。

免费下载DotNetBrowser最新版

概述

EO.WebBrowser DotNetBrowser
Chromium 安全升级(每年) 3 12
支持的 UI 框架 窗体,WPF Avalonia、WinForms、WinUI 3、WPF
操作系统 仅限 Windows Windows、macOS、Linux
LGPL 合规性 未公开 LGPL 合规页面
开源组件 未公开 OSS 组件列表

Chromium 升级频率

DotNetBrowser 和 EO.WebBrowser 都在底层使用 Chromium,并在发行版中捆绑浏览器引擎。这样,Chromium 就成为您应用程序的一部分,您有责任向用户提供 Chromium 更新。而且,您只能按照 Web 视图更新 Chromium 的频率进行更新。

为什么这很重要?一切都是为了安全。研究人员经常在浏览器中发现不同严重程度的漏洞,而 Chromium 在及时修复这些漏洞方面做得很好。这推动了高发布节奏:每月发布主要版本,每两周发布一次安全更新。

DotNetBrowser每年至少发布12 次,涵盖每个主要的 Chromium 更新和重要的小更新。EO.WebBrowser 在 2024 年更新了 2 次Chromium ,在 2023 年更新了 3 次。

UI 框架

DotNetBrowser 为WinForms、 WPF、 Avalonia UI和 WinUI 3提供了 Web 视图控件 。MAUI 支持工作正在进行中。

EO.WebBrowser 为 WinForms 和 WPF 提供控件。

操作系统

DotNetBrowser 适用于 Windows、macOS 和 Linux 操作系统。它可以与 Avalonia UI 一起使用,以创建具有用户界面的应用程序。对于无头任务,DotNetBrowser 不需要 UI 工具包,可以在 Linux 服务器或 Windows 服务中按原样使用。

EO.WebBrowser 是适用于 Windows 的 Web 视图,可以在用户界面和无头模式下工作。

运行时

DotNetBrowser 官方支持 .NET Framework 4.6.2+ 和 .NET 5-9。

EO.WebBrowser 支持 .NET Framework 2+ 和理论上 .NET 5-9。

特征

DotNetBrowser 基于功能齐全的完整版 Chromium 构建。它使用内部集成技术,为开发人员提供大部分 Chromium 功能。

EO.WebBrowser 使用 Chromium 嵌入式框架和专有集成层。这是一个有效的解决方案。

DotNetBrowser 和 EO.WebBrowser 具有类似的 进程外架构,并且通常提供类似的功能,但有一些值得注意的例外。

Chrome 扩展程序

DotNetBrowser 支持 Chrome 扩展程序。您可以手动或以编程方式安装并充分使用大多数 Chrome 扩展程序。扩展程序使您能够使用 JavaScript 库的开发人员工具、改善可访问性、屏蔽广告以及执行许多其他操作。

在 DotNetBrowser 中打开了一个 Chrome 扩展程序。

覆盖在网页视图之上

DotNetBrowser 可以以两种模式呈现 Web 内容:直接在表面或轻量级组件上呈现。直接在表面呈现效果很好,但存在所谓的空域问题:您无法在 WPF 和 Avalonia UI 等框架中将 Web 视图与其他控件叠加。

另一方面,渲染到轻量级组件允许其他控件显示在 Web 视图之上。此渲染模式仅在 DotNetBrowser 中存在。

WPF Canvas 在 DotNetBrowser 之上呈现。

遵守法律规定

TeamDev 定期审查 DotNetBrowser 使用的 Chromium 组件的相关许可证,以确保 DotNetBrowser 和客户产品的商业分发不受限制。

该信息是公开的,并始终在 TeamDev 官方网站上提供,因此可以查看DotNetBrowser 中使用的每个版本的 Chromium 的组件列表和附带的许可证。

遵循 LGPL 的要求,TeamDev 制定了 LGPL 合规程序,以确保正确使用 DotNetBrowser 中包含的 LGPL 组件。(参见DotNetBrowser LGPL 合规性页面

截至撰写本文时,EO.WebBrowser 所使用的开源组件列表尚未在其网站和分发包中提供。此外,也未找到有关 LGPL 合规性或合规程序的公开声明。

相关推荐
袁煦丞24 分钟前
DS file文件管家远程自由:cpolar内网穿透实验室第492个成功挑战
前端·程序员·远程工作
用户0137412843725 分钟前
九个鲜为人知却极具威力的 CSS 功能:提升前端开发体验的隐藏技巧
前端
永远不打烊29 分钟前
Window环境 WebRTC demo 运行
前端
风舞30 分钟前
一文搞定JS所有类型判断最佳实践
前端·javascript
coding随想30 分钟前
哈希值变化的魔法:深入解析HTML5 hashchange事件的奥秘与实战
前端
一树山茶38 分钟前
uniapp在微信小程序中实现 SSE进行通信
前端·javascript
coding随想38 分钟前
小程序中的pageshow与pagehide事件,HTML5中也有?揭秘浏览器往返缓存(BFCache)
前端
萌萌哒草头将军43 分钟前
Rspack 1.5 版本更新速览!🚀🚀🚀
前端·javascript·vue.js
阿卡不卡1 小时前
基于多场景的通用单位转换功能实现
前端·javascript
♡喜欢做梦1 小时前
jQuery 从入门到实践:基础语法、事件与元素操作全解析
前端·javascript·jquery