目录[隐藏][展示]
- 1. 什么是 Blazor?
- 2.描述Blazor框架中的组件?
- 3. 为什么要使用 Blazor?
- 4. Blazor 的用途是什么?
- 5. Blazor WebAssembly 是什么意思?
- 6. Blazor WebAssembly 提供哪些优点和缺点?
- 7. 导演在 Blazor 中的作用是什么?
- 8. Blazor 组件使用哪些存在周期方法?
- 9. “Blazor 服务器”是什么意思?
- 10. Blazor 服务器有哪些优点和缺点?
- 11. 什么情况下我最好使用 Blazor Server?
- 12. Blazor 支持哪些阶段?
- 13. Blazor WebAssembly 与 Blazor Server 的区别是什么?
- 14. 什么时候应该使用 Blazer WebAssembly 而不是 Blazer Server?
- 15. Blazor 中的路由是什么意思?
- 16. Blazor Server 如何处理授权?
- 17. 如何使用 CLI 命令创建和操作 Blazor Server App?
- 18. 如何使用 CLI 命令创建和执行 Blazor WebAssembly 应用程序?
- 19. Blazor 的数据绑定是什么意思?
- 20. Blazor 中如何进行双向数据绑定?
- 21. Blazor WebAssembly 可以与 SQL Server 或其他数据库通信吗?
- 结论
网站和移动应用程序的发展现在正处于一个迷人的时代。 大多数开发人员最初使用 JavaScript 为 Web 应用程序编写代码,因为它的平台自由和其他突破性功能。
现在最流行和首选的编程语言被认为是 JavaScript。
为了制作出色的在线应用程序和移动应用程序,软件开发人员正在寻找 JavaScript 的替代品,因为 Web 开发部门一直在快速增长。
Blazor Web Assembly 是一项开发,使您能够在程序中运行 .NET,而无需额外的组件和模块。
尽管在 Blazor 框架中完成工作面试很困难,但如果您决定这样做,那么您来对地方了。
你可以通过使用这篇文章中来自 Blazor 框架的热门面试问题来获得理想的工作。 现在开始!
1. 什么是 Blazor?
构建现代的、可扩展的和跨平台的 Web应用程序 借助免费的开源 Blazor Web 框架,使用 C# 和 .NET 成为可能。
它最初是为希望使用 C# 语言创建 Web 客户端应用程序的 C# 和 .NET 开发人员而设计的,Blazor 是 Microsoft 和开源社区的一个项目。
现代、快速和快速变化的最佳描述 Blazor。 Blazor 支持客户端和服务器端编码。 .NET 用于编写服务器端和客户端应用程序逻辑。
Blazor 生成 用户界面 作为 HTML 和 CSS 以实现广泛的浏览器兼容性,包括移动浏览器,尽管代码是用 .NET 和 C# 编写的。
2.描述Blazor框架中的组件?
Blazor 使用的 Razor 模板引擎创建 HTML 并将其发送到 Web 浏览器。 HTML 和 C# 语法可一起用于 Razor 模板,这些模板随后由 Razor 引擎编译以生成 HTML。
对于 Blazor Components 中的逻辑,我们有两个选择:我们可以拆分逻辑并将组件函数写入单独的 C# 类文件。
为了在 HTML 旁边编写 C# 函数,我们使用 @code 块。 这 ”。 Blazor 使用 razor 扩展名来识别组件。
3. 为什么要使用 Blazor?
具有 C# 和 .NET 背景但不熟悉 JavaScript 的开发人员是 Blazor 的目标受众。 Blazor 具有以下优点:
- 编写代码时使用 C# 而不是 JavaScript。
- 在客户端和服务器之间共享应用程序逻辑。
- 利用 .NET 环境中已经存在的 .NET 库。
- 从 .NET 的性能、可靠性和安全性中获益。
- 使用可靠、功能丰富且用户友好的语言、框架和工具集合构建您的应用程序。
- 在 Windows、Linux 和 macOS 上利用 Visual Studio 提高工作效率。
4. Blazor 的用途是什么?
为了创建基于 Web 的应用程序,使用了 Blazor。 这适用于网站、移动应用程序以及您可以使用 JavaScript 创建的任何其他内容。
您可以在框架的帮助下进行各种典型的开发活动,包括渲染 HTML 和组件代码、通过 HTTP 获取数据以及客户端路由。
单独使用时,它可以完全访问浏览器的 JavaScript API。 因此,Blazor 程序既可以利用来自 JavaScript 函数的 .NET 方法,也可以利用来自 JavaScript 函数的 .NET 方法。
当框架缺少某个 API 或组件时,或者当他们希望使用 JavaScript 生态系统时,开发人员会使用 JavaScript 互操作。
5. Blazor WebAssembly 是什么意思?
Microsoft 开发了一种新的 UI 技术,称为 Blazor WebAssembly。 利用基于组件的设计,Blazor 使开发人员能够使用 C# 和 .NET 构建单页应用程序 (SPA)。
A.NET 运行时包含在 Blazor 的客户端浏览器内实现中,称为 Blazor WebAssembly。 随着 Blazor WebAssembly 的引入,C# 现在可用于开发客户端 SPA。
以前,Blazor Server 和 ASP.NET Core MVC 都是服务器端解决方案,可用于构建网站。
Blazor WebAssembly 适合您,如果您想扩展您的技能、使用新的 Microsoft 技术,或者只是对 WebAssembly 感兴趣。
6. Blazor WebAssembly 提供哪些优点和缺点?
好处
- 延迟更少的网络
- 线下协助。
- 客户端交互不需要了解 JavaScript。
缺点:
- 大页面下载大小。
- Limited.Net 程序集支持。
- 客户端调试不是很有效。
- 不是很安全; 浏览器将下载 DLL。
- 对浏览器的依赖; 不支持 Internet Explorer。
7. 导演在 Blazor 中的作用是什么?
路由是 URL 模型,路由是模型规划,包括过滤购买和确定如何处理每笔销售的操作。 ASP.net Core Endpoint Routing 由 Blazor 专用应用程序使用。
ASP.net Core 使用 MapBlazorHub 扩展技术进行端点引导开始认识到 Blazor 部分关系的转变。
客户端路由由 Blazor 客户端应用程序提供。 开关在 App 中设置。 Blazor 客户端应用程序的 cshtml 记录。
回退课程由 Blazor Server 应用程序许可证确定。 它可以有效地指导需求很少的计划。
当不支持不同的策略时,可以使用回退策略。 _Host-cshtml 部分主要描述了回退机制。
8. Blazor 组件使用哪些存在周期方法?
在当前构建的 Blazor 片段示例以及非并发策略中,Blazor 应用程序授予各种技能以指导任务:
- 已安装
- OnInitializedAsync
- 参数集
- 参数
- 设置异步
- 渲染后
- OnAfterRenderAsync
9. “Blazor 服务器”是什么意思?
为了表达客户端浏览器的逻辑,Microsoft Blazor Server 使用 Blazor 组件(以 Razor 组件的形式)解耦应用程序级别。
ASP.Net Core 框架是 Blazor 的基础。 它提供了在服务器上的 ASP.NET Core 应用程序中托管 Razor 组件的帮助。
为了在 ASP.Net 服务器的客户端连接到 DOM,Blazor 使用了 SignalR。
10. Blazor 服务器有哪些优点和缺点?
好处
- 与任何软件一起使用。
- 使用了令人难以置信的小页面下载空间。
- JavaScript 没有先决条件。
- 从某种意义上说,代码将在服务器上,这要安全得多。
- 当您使用专业人士的现场互联网注意力时,全力支持在线社交活动。
缺点:
- 监视 SignalR 事件需要更多资源。
- 协调工人活动的高度迟缓网络
- 每个场景都需要一个工作的专业人员; 不应有断开连接的援助。
11. 什么情况下我最好使用 Blazor Server?
对于我们的 .NET 应用程序,Blazor 使我们能够创建丰富、用户友好的界面。 存在许多使用 Blazor Server 的理由。
- 当您必须将工作从客户转移给员工时。
- 不应以任何有说服力的理由改变当前的申请理由。
- 需要使用低控制设备的应用程序可以从中受益匪浅。
- 为 Blazor Server 应用程序设置的关联只需要一点下载。
12. Blazor 支持哪些阶段?
Blazor 的应用程序可以在 Windows、Linux、macOS、云和 Web 等平台上显示和使用。 客户端和工作人员端的应用程序都由 Blazor 维护。
ABlazor 的劳动者方面的应用程序是使用 ASP.NET Core 创建的。 WebAssembly 用于在 Web 程序中运行客户端 Blazor 应用程序。
Blazor 用于构建在线应用程序、云社区应用程序、本地灵活应用程序和 Windows 客户端应用程序。
13. Blazor WebAssembly 与 Blazor Server 的区别是什么?
Blazor 提供 Blazor 服务器和 Blazor WebAssembly 作为其两种应用程序开发方法。 Blazor 服务器应用程序通过实时 SignalR 连接管理 UI 交互,同时在服务器上托管 Blazor 组件。
ASP.NET Core 呈现 Razor 组件,在服务器上编译 C# 代码,然后使用 SignalR 将生成的 UI 元素发送回浏览器。
Blazor WebAssembly 应用程序使用 .NET 独有的 WebAssembly 运行时,这与在浏览器中托管组件客户端的 Blazor Server 不同。
.NET 必须由运行时转换为浏览器组件。 客户端浏览器管理每个组件及其渲染过程。
14. 什么时候应该使用 Blazer WebAssembly 而不是 Blazer Server?
对于希望创建在没有服务器的浏览器中运行的客户端 Web 应用程序的 C# 和 .NET 开发人员,Blazor WebAssembly 提供了一种替代方案。
与 Blazor Server 相比,Blazor WebAssembly 程序不需要服务器,并且所有代码都在浏览器中执行。 以下是 Blazor WebAssembly 优于 Blazor Server 的几种情况。
- 您想快速创建静态网页。
- 您缺乏服务器端和 ASP.NET 编程知识。
- 在服务器上,管理和分发代码不是您想做的事情。
- 您想利用 CPU、内存和存储以及客户端浏览器。
- 您想要创建可以完全离线运行的 Web 应用程序。
- 实时回复和不断更新的 UI 是您想要设计的。
- 要添加实时警报、本地浏览器存储、消息和服务器工作者,您需要利用现代技术,例如渐进式 Web 应用程序 (PWA)。
15. Blazor 中的路由是什么意思?
路由是 URL 的一种模式,路由是一个模式匹配过程,它跟踪请求并决定如何处理每个请求。 Blazor 服务器应用程序使用 ASP.net Core Endpoint Routing。
ASP.net Core 现在使用端点路由的 MapBlazorHub 扩展方法接受 Blazor 组件的传入连接。
客户端路由由 Blazor 客户端应用程序提供。 Blazor 客户端应用的 App.cshtml 文件包含路由器配置信息。
Blazor 客户端应用程序
Blazor 服务器应用
16. Blazor Server 如何处理授权?
授权过程验证用户是否有权访问程序的资源。
换句话说,它使您能够根据角色、声明和规则限制用户对资源的访问。 通过利用属性、内置组件和授权规则的定义,可以实现 Blazor 的 ASP.NET Core 授权系统。
Blazor 的内置 AuthorizeView 组件可以根据用户的身份验证状态显示页面内容。 除了基于角色的授权之外,该组件还提供基于策略的授权。
当您想要根据用户的角色、策略或身份验证状态显示页面内容时,此组件非常方便。
由于 AuthentizationStateProvider,用户的身份验证状态是已知的。
17. 如何使用 CLI 命令创建和操作 Blazor Server App?
要使用 asp.net core CLI 创建 Blazor 服务器应用,请打开命令行并输入以下命令:
18. 如何使用 CLI 命令创建和执行 Blazor WebAssembly 应用程序?
通过使用 asp.net core CLI,我们可以通过打开命令行并输入以下命令来构建 Blazor WebAssembly 程序:
19. Blazor 的数据绑定是什么意思?
在这场成为最伟大的 Web 开发框架的战斗中,Blazor 正在与其他当代 Web 开发框架进行一场硬仗。
绑定是与数据或控件对象(如文本框、选择或表单组件)交互的关键。
通过单向、双向数据绑定和强大的事件绑定行为,Blazor 提供了使用绑定的最佳方法。
20. Blazor 中如何进行双向数据绑定?
在这种情况下,信息同时从源流向目的地,从目的地流向源。
例如,假设我们使用我的组件类的数据变量作为源,并且需要在 HTML UI 上访问该变量的值以便显示或编辑一些消息。
我们从 Blazor 的 razor 中使用 @bind 来读取 Blazor 组件中任何数据变量的值。
当用户编辑数据并将注意力转移到另一个元素时,@bind 会保留它从 ref 接收到的值并更新原始源元素。
21. Blazor WebAssembly 可以与 SQL Server 或其他数据库通信吗?
Blazor 是在客户端上运行的 .NET 代码。 IL 代码将下载到客户端,使逆向工程变得容易。 因此,您应该避免在您的 Blazor WASM 代码中包含任何秘密(例如密码)。
您的 Blazor 应用程序需要使用用户名-密码组合连接到远程数据库,该组合只能保存在应用程序中。 不要那样做——这是一个巨大的安全风险。
您应该只使用具有受限访问层的服务来访问远程数据。 围绕您的数据库创建一个服务 API,以公开您希望提供的操作,例如 REST。
然后,您可以在该 API 上使用安全令牌,以确保只有授权用户才能访问 API,从而访问您的数据。
结论
如果您正在寻找一种解决方案来加快开发过程并略微提高页面性能,那么 Blazor 是一个极好的平台。
这对开发人员来说是个好消息,尽管它超出了典型营销人员创建网站或建立登录页面所需的范围。
这个用户友好的平台消除了编码语言的限制,简化了工作流程,并使开发团队更容易完成他们的任务。
最后,这里有 20 多个 Blazor 面试问题,可以帮助你找到想要的工作。
发表评论