【对比测评】 .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 合规性或合规程序的公开声明。

相关推荐
yqcoder23 分钟前
vue2 和 vue3 中,列表中的 key 值作用
前端·javascript·vue.js
U***498324 分钟前
前端TypeScript教程汇总,从基础到高级
前端·javascript·typescript
梵得儿SHI24 分钟前
Vue 指令系统:事件处理与表单绑定全解析,从入门到精通
前端·javascript·vue.js·v-model·v-on·表单数据绑定·表单双向绑定
IT_陈寒27 分钟前
Vue3性能优化实战:我从这5个技巧中获得了40%的渲染提升
前端·人工智能·后端
lcc18728 分钟前
Vue props
前端·vue.js
落霞的思绪30 分钟前
Cesium里的postProcessStages实现暗黑样式的天地图
前端·gis·cesium
DevUI团队35 分钟前
🔥Angular开发者看过来:不止于Vue,MateChat智能化UI库现已全面支持Angular!
前端·人工智能·angular.js
onebound_noah1 小时前
电商图片搜索:技术破局与商业落地,重构“视觉到交易”全链路
大数据·前端·网络·人工智能·重构·php
答案answer1 小时前
一个超级真实的Three.js树🌲生成器插件
前端·three.js
朴shu1 小时前
揭秘高性能协同白板:轻松实现多人实时协作(一)
前端·设计模式·架构