Blazor资源大全,很棒的Blazor(2)

教程

  • Blazor workshop - outside_default.png .NET Foundation提供的Blazor应用程序构建工作坊,Blazzing Pizza。

  • Blazor Meadow Web API Weather Chart.js - 2021年6月 - 在Blazor应用程序中使用Chart.js显示传感器数据。源代码 。

  • NextTechEvent by Coding After Work - 构建"NextTechEvent"网站,帮助演讲者、组织者和参与者找到下一个技术活动。源代码 outside_default.png

  • Archives - 2021, 2020, 2019, 2018。

库和扩展

可重用的组件,如按钮、输入框、网格等。另请参阅Blazor组件包功能比较表。

组件包

  • FAST - outside_default.pngoutside_default.pngoutside_default.png FAST是一个基于Web组件和现代Web标准构建的技术集合,旨在帮助您高效地解决网站和应用程序设计与开发中的一些常见挑战。FAST和Blazor文档。

  • Ant Design Blazor - outside_default.pngoutside_default.png 一套基于Ant Design和Blazor的企业级UI组件。(演示文档)。

  • MudBlazor - outside_default.pngoutside_default.png MudBlazor是一个雄心勃勃的Material Design组件框架,专注于易用性和清晰的结构。它非常适合希望快速构建Web应用程序而不必费力处理CSS和Javascript的.NET开发人员。MudBlazor完全使用C#编写,使他们能够自由地调整、修复或扩展框架,文档中的众多示例使学习MudBlazor变得非常容易。文档。演示。

  • Blazorise - outside_default.pngoutside_default.png 支持Bootstrap、Bulma、AntDesign和Material CSS的Blazor组件。(Bootstrap演示), (Bulma演示), (AntDesign演示), (Material演示)。

  • MASA Blazor - outside_default.pngoutside_default.png 一套基于Material Design和Blazor的企业级UI组件。它几乎完美地复制了Vuetify,并制定了长期的路线图。它由MASA团队提供支持,并保持免费和开源。文档。专业演示。

  • Radzen.Blazor - outside_default.pngoutside_default.png Blazor的原生UI组件。DataGrid、DataList、Tabs、Dialog等。(演示)。

  • BlazorStrap - outside_default.pngoutside_default.png Blazor的Material Design组件。Blazor的Bootstrap 4组件(演示)。

  • FAST Blazor -Microsoft官方FluentUI Web组件的轻量级包装,用于.NET 6.0 Razor视图和Blazor。(示例和演示)。

  • Element-Blazor - outside_default.pngoutside_default.png 使用Element UI的Blazor组件库。API模仿Element,CSS直接使用Element的样式,HTML结构直接使用Element的HTML结构。Blazor WebAssembly版本演示。Blazor WebAssembly版本PWA模式演示。

  • BlazorFluentUI - outside_default.pngoutside_default.png 将FluenUI/Office Fabric React组件和样式简单移植到Blazor。客户端演示(WebAssembly)。服务器端演示(SignalR)。

  • BootstrapBlazor - outside_default.pngoutside_default.png 用于Blazor的可重用Bootstrap组件。(演示文档)。

  • ComponentOne Blazor UI Components - 外部链接。用于服务器端和客户端应用程序的快速数据网格、列表视图、输入框和其他原生Blazor组件。

  • DevExpress Blazor UI Components - outside_default.pngoutside_default.png 一套用于Blazor服务器端和Blazor客户端平台的原生UI Blazor组件(包括数据网格、数据透视表、调度器和图表)。

  • Syncfusion Blazor UI Components - outside_default.pngoutside_default.png 最全面的原生Blazor组件库,包括数据网格、图表、调度器、图表和文档编辑器组件。(演示)。

  • ADMINLTE - outside_default.pngoutside_default.png Blazor的ADMINLTE是一个可重用组件集合,可以轻松地作为设计师或开发人员开发数字服务。包括按钮、表单元素和页面模板。该项目改编了ADMINLTE 3,因此可以从dotnet core Blazor中使用这些组件。

  • Blazority - outside_default.pngoutside_default.png 基于Clarity UI设计的Blazor组件库。包括Datagrid和Tree-view等30多个组件(文档和演示)。

  • Makani - outside_default.pngoutside_default.png 用于Blazor和.NET MAUI Hybrid的轻量级、可定制和性能优化的组件库。使用TailwindCSS构建。演示。

  • Material.Blazor - outside_default.pngoutside_default.png 另一种Material Theme Razor组件库。Material.Blazor专注于提供来自Google的material-components-web的纯标记 - 我们不试图在您和您对Google的CSS和SASS的使用之间插入自己,因为他们比我们做得更好。我们还有一些很酷的“加号”组件。查看我们的演示和全面的文档。

  • Majorsoft Blazor Components - outside_default.pngoutside_default.png Majorsoft Majorsoft Blazor Components是一套用于Blazor应用程序的UI组件和其他有用的扩展。所有组件都是免费的,并且可以在NuGet上获得。该项目的主要目标是提供一套易于使用、功能丰富的可自定义组件集合和其他有用的扩展。NuGet 演示应用程序 文档。

  • MComponents - outside_default.pngoutside_default.png 开源MIT Blazor组件:网格、选择、向导等。

  • PanoramicData Blazor UI Components - outside_default.pngoutside_default.png 包括表格、树形视图、工具栏和文件资源管理器在内的一组开源Blazor组件。演示。

  • HAVIT Blazor - outside_default.pngoutside_default.png Bootstrap 5组件+在Bootstrap 5之上构建的其他组件(网格、自动建议、消息框等)。带有gRPC代码优先客户端/服务器通信、本地化等的企业项目模板。交互式文档和演示。

  • Blazority - outside_default.pngoutside_default.png 基于Clarity UI设计的Blazor组件库。包括Datagrid和Tree-view等30多个组件(文档和演示)。

  • Telerik UI for Blazor - 外部链接(telerik.com)。用于Blazor的一套原生UI组件,包括网格、图表和日历组件。

  • Start Blazoring - 使用您选择的Blazorise或MudBlazor构建的Blazor起始模板,更多UI库集成即将推出。它提供了许多功能,如用户注册、登录、密码重置、双因素认证;用户管理、角色、权限;后台工作、日志记录、缓存、电子邮件模板、本地化等等。

  • Smart UI for Blazor -包括网格、看板、甘特图、图表、停靠、枢轴等在内的Blazor组件库。网站。

  • TabBlazor -基于Tabler UI的Blazor管理主题。最小化的JavaScript。演示。

  • Blazor.Ionic - outside_default.pngoutside_default.png Blazor的Ionic框架集成。

  • Blazor Controls Toolkit - 用于实现商业应用程序的完整工具集。包括所有Bootstrap JavaScript组件的等效组件,所有html5输入类型的小部件回退,高级可编辑组件,如DataGrid、TreeView、DetailView、ModalDetail、DetailList。所有组件都有默认可自定义的模板,并支持虚拟化和拖放。组件渲染是元数据驱动的,因此组件配置部分是自动的,部分可以通过数据注释驱动。该工具集还包括查询工具,用于发出复杂的本地或远程查询,更改跟踪工具,将仅更改的记录发送到服务器,高级验证属性,全球化工具,修改现有组件的“行为”,状态管理和保存等等。

  • BlazorOcticons - outside_default.png Github上的Octicons作为.razor组件创建,并通过NuGet包提供。该项目的网站是使用生成的组件的示例。

  • Nevron Open Vision Components for Blazor - outside_default.pngoutside_default.png 用于Blazor的图表、图表、文本编辑器、仪表、条形码和用户界面组件。演示。

单独的组件

API

  • Head Element Helper - outside_default.pngoutside_default.png 用于更改文档标题和元素的</code>和<code><Meta></code>组件,支持服务器端预渲染以用于SEO/OGP。(演示).</p></li> <li><p>Blazor.Canvas - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于HTML画布API的C#封装库(无需JS依赖)(演示).</p></li> <li><p>BlazorIntersectionObserver - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 这是对Intersection Observer API的封装。</p></li> </ul> <h4>图表</h4> <ul> <li><p>ChartJs.Blazor - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 将ChartJs图表带到Blazor中。</p></li> <li><p>GG.Net Data Visualization - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor Web应用程序的交互式和灵活的图表。受到广受欢迎的ggpplot2 R包的启发,GG.Net为您的数据分析工作流程提供了丰富的功能。只需几行代码即可构建出版质量的图表。网站。</p></li> <li><p>Blazor-ApexCharts -Blazor封装器,用于ApexCharts。演示.</p></li> <li><p>Plotly.Blazor - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 将具有40多种图表类型的图表库plotly.js带到Blazor中(演示).</p></li> </ul> <h4>CSS</h4> <ul> <li><p>BlazorSize - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> BlazorSize是用于Blazor的JavaScript互操作库,用于检测浏览器的当前大小、大小变化和测试媒体查询。</p></li> <li><p>BlazorAnimation - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 基于animate.css的Blazor组件,用于轻松地为内容添加动画效果。演示.</p></li> </ul> <h4>数据库</h4> <ul> <li><p>DexieNET - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> DexieNET旨在成为Dexie.js的功能完整的.NET封装,Dexie.js是著名的JavaScript IndexedDB封装库。它专为Blazor设计,并包含一个易于使用的Razor组件。</p></li> </ul> <h4>数据表格/表格</h4> <ul> <li><p>Grid.Blazor - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 带有CRUD表单的网格组件,适用于Blazor和ASP.NET MVC,支持过滤、排序、搜索、分页、子网格等功能(演示).</p></li> <li><p>BlazorGrid - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 虚拟化数据表格组件,专注于显示远程数据。(演示和文档).</p></li> </ul> <h4>日期和时间</h4> <ul> <li><p>BlazorDateRangePicker - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor的日期范围选择器组件库。演示.</p></li> <li><p>Toast_UI.Blazor_Calendar - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于查看和创建事件、任务和里程碑的全功能日历UI组件。支持月、周和日视图。Blazor Calendar包装了功能齐全的Toast UI Calendar JS库。MIT许可证。示例项目.</p></li> </ul> <h4>地图</h4> <ul> <li><p>BlazorGoogleMaps - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于GoogleMap库的Blazor互操作。</p></li> <li><p>UnlockedData.Mapael - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 矢量绘图/映射库的Blazor封装。Jquery Mapael。</p></li> </ul> <h4>模态框、Toast和通知</h4> <ul> <li><p>Blazored.Modal - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor和Razor组件应用程序的无需JavaScript的模态框库。</p></li> <li><p>Blazored.Toast - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor和Razor组件应用程序的无需JavaScript的Toast库。</p></li> <li><p>Blazor.Sidepanel - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor应用程序的强大可自定义的侧边栏实现。</p></li> </ul> <h4>标签页</h4> <ul> <li><p>BlazorXTabs - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 提供各种标签页功能的扩展标签页组件库,适用于Blazor。</p></li> </ul> <h4>测试</h4> <ul> <li><p>bUnit - 用于Blazor组件的测试库 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor组件的测试库。您可以轻松地使用C#或Razor语法定义要测试的组件,并使用语义化的HTML差异/比较逻辑验证结果。您可以轻松地与组件交互和检查组件,触发事件处理程序,提供级联值,注入服务,模拟IJsRuntime,并执行快照测试。</p></li> <li><p>Verify.Blazor - 用于Blazor组件的快照测试库 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor组件的快照测试库。支持通过bunit或原始Blazor渲染将Blazor组件渲染到快照文件中。</p></li> </ul> <h4>其他</h4> <ul> <li><p>Stl.Fusion - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> .NET Core和Blazor库,通过引入一种新颖的“计算可观察对象”(computed observables)来显著改进实时和高负载服务的实现方式 - 不可变、线程安全,最重要的是对开发人员几乎是透明的。示例。概述。</p></li> <li><p>BlazorContextMenu - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor的上下文菜单组件(演示)。</p></li> <li><p>Z.Blazor.Diagrams - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 一个完全可定制和可扩展的通用图表库,用于Blazor,灵感来自流行的react-diagrams库,并添加了许多功能。演示。</p></li> <li><p>Blazored.Typeahead - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 自动完成文本框,支持本地和远程数据源,适用于客户端和服务器端Blazor。</p></li> <li><p>Blazor-DragDrop - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor的易于使用的拖放库。</p></li> <li><p>BlazorDownloadFile - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 无需任何JavaScript库或依赖项,从C#将文件下载到浏览器的Blazor下载文件解决方案。BlazorDownloadFile是在客户端保存文件的解决方案,非常适合在客户端生成文件的Web应用程序。但是,如果文件来自服务器,我们建议您首先尝试使用Content-Disposition附件响应头,因为它具有更广泛的跨浏览器兼容性。</p></li> <li><p>Excubo.Blazor.Diagrams - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 交互式图表组件(流程图、UML、BPMN等),可根据用户需求进行自定义和扩展(节点类型、样式)。演示。</p></li> <li><p>Blazor.FileSystemAccess - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于从浏览器读取和写入本地文件系统的Blazor包装器,支持文件和目录。[演示](The API makes it possible to read and write to your local file system from the browser both files and directories.)。</p></li> <li><p>Blorc.PatternFly - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> PatternFly的Blazor封装。要查看最新的开发分支,请访问demo应用程序。</p></li> <li><p>BlazorTransitionableRoute - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 允许当前和上一个路由同时存在,从而实现UI/UX设计系统的过渡动画。</p></li> <li><p>Razor.SweetAlert2 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 实现流行的SweetAlert2 JavaScript库的Blazor组件。</p></li> <li><p>BlazorMonaco - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Microsoft的Monaco Editor的Blazor组件,用于支持Visual Studio Code。(演示)。</p></li> <li><p>Blazor.Grids - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 带有额外功能的CSS网格组件库,例如交互式移动和调整大小。轻松创建自己的仪表板。(演示)。</p></li> <li><p>Blazor.TreeViews - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 树视图组件库。(演示)。</p></li> <li><p>GEmojiSharp.Blazor - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor的GitHub表情符号。(演示)。</p></li> <li><p>Texnomic.Blazor.hCaptcha - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于服务器端Blazor的hCaptcha组件。</p></li> <li><p>BlazorLocalizationSample <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 使用XLocalizer本地化的默认项目模板,支持在线翻译和自动资源创建。</p></li> <li><p>TimeCalc - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 使用Blazor WebAssembly实时跟踪速度魔方平均值的应用程序。演示。</p></li> <li><p>BlazorSliders - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 创建由滑动分隔器分隔的多个面板。</p></li> <li><p>BlazorTimeline - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 响应式的垂直时间轴组件。</p></li> <li><p>BlazorTypewriter - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor的打字机效果。</p></li> <li><p>BlazorMergely - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 基于Mergely的Blazor差异和合并组件的实现,支持服务器端。</p></li> <li><p>MetaMask.Blazor - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 一个库,为Blazor WebAssembly提供了使用MetaMask的简便助手。</p></li> <li><p>Blazor File Drop Zone - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 将“input type=file”元素包围在这个Blazor组件中,以创建一个接受拖放文件的区域(演示)。</p></li> <li><p>BlazorCurrentDevice - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 使用current-device.js为Blazor进行设备检测。</p></li> <li><p>BlazorStyledTextArea - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 一个带有样式的文本区域。该组件本质上仍然是一个文本区域,但可以根据应用程序的需要对文本进行任意样式设置。它的简单性是有意设计的,以避免富文本编辑器带来的复杂性和问题。</p></li> <li><p>SignaturePad - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 一个简单易用的Blazor组件,用于绘制自定义签名。演示。</p></li> </ul> <h3>工具和实用程序</h3> <p><em>用于状态管理、Cookie、本地存储和其他特定工具的库和扩展。</em></p> <ul> <li><p>Fluxor - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于DotNet的零样板Flux/Redux库。</p></li> <li><p>Blazored.LocalStorage - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 一个库,为Blazor应用程序提供对本地存储的访问。</p></li> <li><p>Blazor-State - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 使用MediatR管道在Blazor中管理客户端状态。</p></li> <li><p>bUnit - 用于Blazor组件的测试库 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor组件的测试库。您可以使用C#或Razor语法轻松定义要测试的组件,并使用语义HTML差异/比较逻辑验证结果。您可以轻松地与组件交互和检查组件,触发事件处理程序,提供级联值,注入服务,模拟IJsRuntime,并执行快照测试。</p></li> <li><p>TextCopy - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 一个跨平台的将文本复制到剪贴板和从剪贴板复制文本的包。支持Blazor通过Clipboard浏览器API。</p></li> <li><p>CssBuilder - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> CssBuilder是用于Razor组件的CSS类的构建器模式。</p></li> <li><p>Blazor.FileSystemAccess - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于浏览器文件系统访问API的Blazor封装器。</p></li> <li><p>Blazor.Polyfill - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor的Polyfill(用于支持Internet Explorer 11和其他一些浏览器)。</p></li> <li><p>Blazor I18n/Localization Text - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor的本地化内容文本库(演示)。</p></li> <li><p>BlazorGoogleMaps - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor的GoogleMap库。</p></li> <li><p>BlazorWorker - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 在Blazor中创建DotNet Web Worker线程/多线程的库。在线演示。</p></li> <li><p>MvvmBlazor - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> BlazorMVVM是一个用于构建Blazor和BlazorServerside应用程序的小型框架。通过其简单易用的MVVM模式,您可以提高开发速度,同时最大限度地减少麻烦。</p></li> <li><p>Blazor.BrowserExtension - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 使用Blazor WebAssembly开发浏览器扩展/插件。已在Google Chrome、Mozilla Firefox和MS Edge上进行了测试。</p></li> <li><p>Blazor Analytics - Blazor的分析扩展。</p></li> <li><p>Blazor PDF - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 使用iTextSharp从Blazor Server应用程序生成PDF文档。</p></li> <li><p>BlazorRouter - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> BlazorRouter是一个受react-router启发的令人敬畏的路由器,为Blazor提供声明式路由。</p></li> <li><p>DataJuggler.Blazor.FileUpload - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> Steve Sanderson的BlazorFileInput组件的包装器。</p></li> <li><p>BlazorPrettyCode - 用于文档站点的Blazor代码组件。演示。</p></li> <li><p>Blazor.EventAggregator - Blazor(Razor组件)的轻量级事件聚合器。</p></li> <li><p>Blazor Gamepad - 为Blazor提供游戏手柄API访问。</p></li> <li><p>Blazor Hotkeys2 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 为Blazor提供基于配置的键盘快捷键。</p></li> <li><p>BlazorRealm - Blazor的Redux状态管理。</p></li> <li><p>Blazor.LocalFiles - 在浏览器中打开文件并加载到Blazor中。</p></li> <li><p>Blazor.SpeechSynthesis - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 为Blazor提供语音合成API访问的库。</p></li> <li><p>Blazor BarCode - 一个使用条形码字体的Blazor条形码库。</p></li> <li><p>BlazorState.Redux - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 使用Redux开发Blazor应用程序。</p></li> <li><p>Howler.Blazor - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Howler.js的Blazor JSInterop包装器,一个音频库。</p></li> <li><p>jsMind.Blazor - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于jsMind的Blazor JSInterop包装器,一个思维导图工具。</p></li> <li><p>Blazor Highcharts - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 受欢迎的Highcharts库的端口。演示。</p></li> <li><p>Blazor.LazyStyleSheet - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于CSS样式表的延迟加载。</p></li> <li><p>Blazor.ScriptInjection - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> Blazor组件中的智能脚本标签,非常适合延迟加载JavaScript文件。</p></li> <li><p>DnetIndexedDb - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于IndexedDB DOM API的Blazor库。</p></li> <li><p>BlazorIndexedDbJs - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> BlazorIndexedDbJs是IndexedDB DOM API的包装器,支持Blazor WASM和Server。</p></li> <li><p>Blazor-Color-Picker - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 打开一个调色板,用于Blazor应用程序的Material颜色。</p></li> <li><p>Blazm.Bluetooth - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于使用蓝牙连接设备的Blazor库。</p></li> <li><p>WebBluetooth - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于实验性WebBluetooth功能的Blazor服务。基于Blazm.Bluetooth。</p></li> <li><p>BlazorApplicationInsights - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor Web应用程序的Application Insights。</p></li> <li><p>Blazor Printing - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 使用本地打印对话框在Blazor Server或客户端应用程序中打印和保存PDF文档。</p></li> <li><p>BlazorTemplater - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 使用<code>.razor</code>组件为电子邮件内容呈现HTML字符串。</p></li> <li><p>MediaSession.Blazor - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Media Session API的Blazor JSInterop包装器。Media Session API提供了自定义媒体通知的方法。(演示)。</p></li> <li><p>BlazorAntivirusProtection - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor Wasm项目的防病毒保护。该软件包试图在将Blazor Wasm标记为恶意软件的杀毒软件产生误报之前提供保护,直到Microsoft提供官方解决方案。</p></li> <li><p>Phork.Blazor.Reactivity - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 一个无偏见的Blazor状态管理库,利用INotifyPropertyChanged和INotifyCollectionChanged .NET接口自动检测组件中的状态更改。</p></li> <li><p>CodeBeam.GoogleApis.Blazor - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 用于Blazor的GoogleApis的开源实用程序包。从头开始编写,旨在提供最简单的使用方式。</p></li> </ul> <h3>其他</h3> <ul> <li><p>Blazor Extensions Home - Blazor扩展的主页。<img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"></p></li> <li><p>Bolero - F#的Blazor,具有热重新加载的模板、类型安全的端点和路由、远程调用等等。<img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"></p></li> <li><p>BlazorFabric - 使用流畅设计的Blazor版Microsoft UI Fabric。(演示)。<img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"></p></li> <li><p>BlazorWebView - 用于WPF、Android、macOS和iOS的Blazor WebView控件。在Webview内本地运行基于.NET Core和Mono的Blazor。文档。<img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"></p></li> <li><p>BlazorLazyLoading - 生产就绪的延迟加载实现。对WASM和服务器(页面、组件、dll)提供完整的延迟加载支持,如果需要,还可以实现模块化(自定义端点、自定义清单等)。<img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"></p></li> <li><p>Fun.Blazor - 使F#开发人员更容易编写Blazor的项目。使用F#进行Blazor开发,使用计算表达式(CE)风格的DSL进行内部和第三方Blazor库的开发,依赖注入,自适应和Elmish模型,Giraffe风格的路由,类型安全风格。<img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"></p></li> <li><p>Blazor.DownloadFileFast - 从Blazor快速下载文件到浏览器,无需任何JavaScript库引用或依赖。(演示)。<img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"></p></li> <li><p>SpotifyService - 用于Blazor WebAssembly项目的高级Spotify API库,可在浏览器中播放Spotify音乐,管理OAuth 2.0授权,提供对Spotify Web API的简单访问,并使用IndexedDB缓存。<img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"></p></li> <li><p>Blazor.DynamicJavascriptRuntime.Evaluator - 在Blazor客户端应用程序中执行动态对象表达式的Javascript。<img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"></p></li> <li><p>Bionic - 用于Blazor项目的Ionic CLI克隆。</p></li> <li><p>EventHorizon Blazor TypeScript Interop Generator - 该项目接收TypeScript类型定义文件,并创建一个与提供的Interop抽象项目配合使用的.NET Core项目。</p></li> <li><p>Generators.Blazor - 用于提高Blazor性能的源代码生成器。该项目还包含用于检测Blazor应用程序中常见问题的分析器。</p></li> </ul> <h2>实际应用</h2> <ul> <li><p>Try .NET - Try .NET为开发人员和内容作者提供了创建交互式体验的工具。<img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"></p></li> </ul> <h2>视频</h2> <ul> <li><p>ASP.NET社区直播 - 使用Playwright进行Blazor应用测试 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2023年2月23日至2023年3月14日 - 学习如何使用Playwright为您的Blazor应用实现端到端测试。社区链接。</p></li> <li><p>Steve Sanderson关于Blazor United的访谈 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2023年2月23日 - Carl与Blazor的创建者Steve Sanderson进行访谈,回答关于即将推出的.NET 8中的Blazor United的问题。</p></li> <li><p>使用Blazor探索OpenAI - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2023年2月23日 - 与Michael Washington聊聊.NET开发人员如何在他们的Blazor应用中利用OpenAI GPT-3。</p></li> <li><p>ASP.NET社区直播 - .NET 8中的Blazor United - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2023年2月14日 - Blazor团队分享了关于.NET 8中Blazor United的初步想法,这是一个旨在为您的所有Web UI场景创建一个统一模型的努力,结合了Razor Pages、Blazor Server和Blazor WebAssembly的优点。社区链接。</p></li> <li><p>在React中运行Blazor组件 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年12月21日 - 您是否厌倦了慢而笨重的Web应用程序?不要再寻找了,Blazor在React中运行!Blazor是一个强大的框架,用于使用C#构建交互式客户端Web应用程序,当与React的速度和灵活性相结合时,您将获得令人惊叹的高性能Web体验的绝佳组合。在这个视频中,我们将使用新的自定义元素功能在React中运行Blazor,并展示这个动态二人组的其他令人兴奋的功能和优势。不要错过Web开发的未来。</p></li> <li><p>ASP.NET社区直播 - 探索Blazor中的新功能和实验性功能 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2023年1月10日 - 展示使用新功能和当前实验性功能构建.NET 7 Blazor应用程序的过程。特邀嘉宾:Daniel Roth、Jon Galloway、Mackinnon Buck。社区链接。</p></li> <li><p>使用IDE创建Fluxor CRUD应用程序 | Blazor IDE第2部分 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年11月18日 - 使用IDE创建Fluxor CRUD应用程序。</p></li> <li><p>.NET 7中的Blazor新功能 | .NET Conf 2022 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年11月10日 - .NET 7中的Blazor加载了许多使构建美观交互式Web UI更加轻松和高效的新改进。在本次演讲中,我们将看看对自定义元素的新支持、改进的数据绑定、处理位置更改事件、显示加载进度、动态身份验证请求等方面的支持。</p></li> <li><p>使用Blazor构建音频浏览器应用程序 | .NET Conf 2022 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年11月10日 - 您已经了解了.NET 7中的新功能,但是当您构建应用程序时,它们如何协同工作呢?加入Steve,他将使用新旧功能快速构建一个端到端的音频管理器应用程序,使用Blazor WebAssembly。这是一个中等难度的演讲(假设您已经了解Blazor),充满了提示和技巧,包括:更清晰地组织JS互操作、直接访问最终用户文件系统上的文件、动态生成SVG、创建优雅的“加载”体验以及AOT编译的性能影响。提供完整的源代码!</p></li> <li><p>.NET 7中的WebAssembly ❤️ .NET | .NET Conf 2022 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年11月10日 - .NET 7引入了在WebAssembly上运行.NET代码的强大新功能。在本次演讲中,我们将展示如何使用新的和改进的JavaScript互操作支持从任何JavaScript代码中运行.NET。我们将介绍.NET在WebAssembly上的调试和热重载改进,并展示.NET 7中的.NET WebAssembly构建工具如何利用最新的WebAssembly功能(如SIMD和异常处理)来提高性能。我们还将介绍一些即将推出和实验性的.NET WebAssembly功能,如多线程支持。</p></li> <li><p>使用Playwright测试Blazor应用程序 | .NET Conf 2022 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年11月10日 - 测试很难,测试需要时间学习和编写,而时间就是金钱。作为开发人员,我们想要测试。我们知道我们应该测试,但我们没有时间。那么我们如何让更多的开发人员进行测试呢?我们可以创建更好的工具。让我向您介绍Playwright - 一种可靠的端到端跨浏览器测试工具,由Microsoft全面开源。Playwright的代码生成为您生成测试,所以现在您真的没有借口了。是时候玩转您的测试了。</p></li> <li><p>使用Blazor Hybrid使用Web技术创建本机桌面和移动应用程序 | .NET Conf 2022 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年11月10日 - 您是Web开发人员,需要针对iOS、Android、macOS和Windows进行开发吗?使用.NET MAUI和Blazor Hybrid直接发布到商店并构建世界级应用程序,具有本机API访问权限。</p></li> <li><p>使用Blazor现代化您的WPF和Windows Forms应用程序 | .NET Conf 2022 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年11月10日 - 桌面应用程序并未消亡,有许多使用WPF和Windows Forms编写的应用程序需要转移到Web上,或者重用由Web团队编写的现成组件。Blazor可以满足这两个要求,感谢Blazor Hybrid。让我们看看您如何使用它。</p></li> <li><p>Blazor开发人员的CSS技术 | .NET Conf 2022 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年11月10日 - 您的CSS代码是否让您想起《收藏者》的一集?在本次演讲中,我们将探讨Blazor开发人员面临的各种与CSS相关的架构决策。与会者将学习何时以及如何使用纯CSS、Sass或CSS隔离与Blazor。我们将讨论自定义CSS属性等现代CSS技术。我们将探索通过利用CSS原则和整合辅助库构建模块化和智能CSS的技术。本次演讲旨在打破对Bootstrap和Tailwind等CSS系统的依赖。</p></li> <li><p>使用Blazor和.NET构建Azure静态Web应用程序 | .NET Conf 2022 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年11月10日 - 您是一名.NET开发人员,想要快速构建和部署全栈.NET无服务器应用程序吗?那么这个演讲适合您!在本次演讲中,我们将学习如何使用Azure静态Web应用程序与Blazor和.NET。首先,我们将探索Azure静态Web应用程序。然后,看看如何使用与.NET Azure Functions或Azure Container Apps配对的Blazor WebAssembly入门。我们将继续探索其他现有的.NET API选项。最后,我们将发现如何从我们的代码存储库自动构建和部署到Azure。</p></li> <li><p>Blazor本地化:Carl Franklin的Blazor培训第90集 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年11月3日 - Carl展示了如何在Blazor WebAssembly应用程序中轻松支持多种语言。</p></li> <li><p>使用Blazor和RavenDB构建“Next Tech Event”第12部分 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年11月2日 - 项目“NextTechEvent”的第12部分,该网站将帮助演讲者、组织者和参与者找到他们的下一个技术活动。在本次直播中,我们使用RavenDB添加了搜索功能,通过添加索引的方式。组织者可以按名称、国家、位置、城市和标签或它们的组合来筛选会议。这样我们就可以看到在“斯德哥尔摩”有多少个会议,或者所有名为“NDC”的会议。<img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0">  源代码。</p></li> <li><p>MAUI Blazor Podcast Client Part 2: The .NET Show with Carl Franklin Ep 30 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年10月20日 - 添加嘉宾、链接和播放列表功能。</p></li> <li><p>ASP.NET Community Standup - Blazor in .NET 7 Part III - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年10月11日 - 了解Blazor在.NET 7中的最新多线程和MSAL开发。社区链接。</p></li> <li><p>MSAL Auth in Blazor Server - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年9月22日 - Carl展示如何使用MSAL和Azure AD B2C对用户进行身份验证并调用安全API。</p></li> <li><p>ASP.NET Community Standup - Blazor in .NET 7 Part II - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年9月13日 - 了解Blazor在.NET 7中的令人兴奋的运行时变化。社区链接。第一部分。</p></li> <li><p>从头开始制作Blazor文本编辑器,Blazor文本编辑器第1部分 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年9月8日 - 从头开始制作Blazor文本编辑器,Blazor文本编辑器第1部分。</p></li> <li><p>Roslyn语法高亮 | Blazor文本编辑器第2部分 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年9月8日 - Roslyn语法高亮 | Blazor文本编辑器第2部分。</p></li> <li><p>从头开始制作Blazor文本编辑器 | Blazor文本编辑器第1部分 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年9月8日 - 从头开始制作Blazor文本编辑器 | Blazor文本编辑器第1部分。</p></li> <li><p>.NET MAUI和Blazor - 在应用和Web之间共享代码 - 2022年9月2日 - 在这个视频中,Daniel将向您展示如何为.NET MAUI和Blazor创建一个项目,并如何组织代码,以便在应用和Web之间共享。<img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 源代码。</p></li> <li><p>Blazor在100秒内 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年9月1日 - 简短介绍Blazor。Blazor是一个使用HTML、CSS和C#构建前端Web应用程序的框架。它利用WebAssembly来消除通常的客户端技术栈中的JavaScript。</p></li> <li><p>在几分钟内使用Blazor构建交互式待办事项列表 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年8月28日 - 在本教程中,我们将学习如何使用Blazor创建一个待办事项列表,并使用Bootstrap改进页面。</p></li> <li><p>Blazor在.NET 7中 - .NET社区站立 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年8月23日 - 由Daniel Roth、Jon Galloway、Mackinnon Buck和Tanay Parikh概述了.NET 7中的Blazor。了解Blazor在.NET 7中即将推出的伟大新功能。</p></li> <li><p>Blazor绝对初学者21分钟 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年8月22日 - 在本教程中,您将学习使用Blazor构建网站的基础知识,以及默认的Blazor项目模板的工作原理。如果您有任何问题,请随时留言,我会尽力回复。我还在下面添加了一些您可能会发现有用的注释。</p></li> <li><p>在Blazor中实现主页标题 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年7月18日 - 在本次会议中,Josh和我将继续在开源空间中构建一个去中心化的社交媒体平台。在这个特定的会议中,我们将讨论、设计和实现使用SharpStyles在Blazor中的主页标题。</p></li> <li><p>Blazor:Blazor WebAssembly中的状态管理方式 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年7月12日 - ASP.NET社区站立 - Blazor:Blazor WebAssembly中的状态管理方式。在使用Blazor WebAssembly应用程序时,我们经常忽视适当的状态管理的重要性。如果没有良好的理解和正确的策略,我们的应用程序可能会被具有不良行为的组件污染,我们最终会后悔糟糕的选择。- 本次会议涵盖了简单的状态管理方式,然后逐渐发展到像Redux模式这样更有趣的东西。我们将看到每种方式的优点和缺点。接下来,我们将退后一步,确定与我们的应用程序配对的适当状态管理调味品。您将在本次会议中品尝到所有美味的风味,并能够做出明智的决策,以获得最佳的开发体验。社区链接。</p></li> <li><p>使用AAD保护Blazor和Web API - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年7月11日 - 本视频展示了如何使用Azure Active Directory (AAD)保护您的Blazor应用程序和Web API。</p></li> <li><p>Blazor和.NET在WASI上的未来 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年7月7日 - Blazor和.NET在WASI上的未来,由Steve Sanderson在NDC Porto上的演讲。在这个以演示为中心的演讲中,微软开发者/架构师Steve将展示用于构建浏览器和本地应用程序的Blazor的最新技术。这将包括.NET 6中提供的强大新功能,以及正在开发的.NET 7和.NET MAUI的即将推出的增强功能。我们还将探讨更多实验性的未来可能性,包括在服务器上运行.NET Core的WASI(WebAssembly on the server),这将创建全新的云和边缘托管选项,并使您能够将.NET代码带到以前从未到达过的地方。</p></li> <li><p>在Visual Studio内部测试新的Blazor实验性教程 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年6月29日 - Visual Studio团队的Grace Taylor加入James,谈论他们正在进行的一个改进Visual Studio内部教程的新实验!他们的第一个实验将帮助开发人员开始学习和构建使用Blazor的Web应用程序。安装Visual Studio,您可能有机会测试团队的这个新实验性功能。</p></li> <li><p>在Blazor中测试驱动CSS样式 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年6月20日 - 本视频介绍了在Blazor中测试驱动的CSS样式。</p></li> <li><p>我应该专注于Blazor还是ASP.NET Core? - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年6月16日 - 我应该更深入地学习Blazor还是更好地了解ASP.NET Core?哪个是首先学好的更好的选择?我应该来回跳动还是专注于一个?</p></li> <li><p>在Blazor WebAssembly中持久化数据 - 2022年6月3日 - Carl使用基于IndexedDB的客户端存储库来持久化数据,即使没有互联网连接。</p></li> <li><p>使用TypeScript与Blazor - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年5月27日 - Carl向您展示如何在创建Blazor组件时使用TypeScript。</p></li> <li><p>使用.NET和Visual Studio为任何设备构建原生应用程序 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年5月25日 - 了解如何使用Visual Studio和.NET Multi-platform App UI (.NET MAUI)快速、迭代地构建现代、原生和混合式Web应用程序,以适用于任何设备。我们将为您介绍可以加快开发时间、从单个代码库创建功能强大的原生桌面和移动应用程序(适用于Windows、macOS、iOS和Android)的工具和框架。我们还将向您展示如何通过原生设备功能增强您的Blazor Web应用程序。</p></li> <li><p>使用Blazor Hybrid构建原生客户端应用程序 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年5月25日 - Blazor使用最新的开放Web标准,实现了使用.NET进行全栈Web开发。但是,如果您需要构建原生客户端应用程序呢?Blazor正在扩展到Web以外的领域,通过使用Web技术和.NET的混合方式来支持构建原生客户端应用程序。在本次演讲中,我们将介绍.NET MAUI中的新的Blazor Hybrid支持,用于构建跨平台的原生客户端应用程序(适用于移动设备和桌面),以及用于现代化WPF和Windows Forms应用程序的Blazor Hybrid支持。</p></li> <li><p>.NET Core和WASI(服务器上的WebAssembly)的未来可能性 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年5月25日 - WebAssembly正在超越浏览器,成为现代云原生架构的基础元素。它可以让任何语言编译为在任何操作系统或处理器上运行的通用二进制文件,具有强大的沙箱和出色的性能。本次演讲介绍了在WASI环境中运行.NET的新方法。您将了解到如何将现有的.NET代码构建为符合WASI标准的模块,以及这样做带来的机会。这是一个实验性的项目,尚未成为正式产品。</p></li> <li><p>.NET MAUI入门教程-面向初学者的完整课程|使用C#在iOS、Android、Mac和Windows上进行教程 - 2022年5月23日 - 让我们一起开始我们的旅程,使用.NET MAUI、C#和Visual Studio构建美观的原生跨平台应用程序,适用于iOS、Android、macOS和Windows!在这个完整的工作坊中,我将带您了解关于.NET MAUI和构建您的第一个应用程序的所有基础知识。您将学习基础知识,包括如何使用XAML构建用户界面,如何使用MVVM和数据绑定简化开发,如何在页面之间导航,访问平台功能(如地理位置),优化数据集合,并为浅色和深色主题设置应用程序主题。这门课程包含了您学习基础知识所需的一切,并为您在使用.NET MAUI构建应用程序时取得成功做好准备。</p></li> <li><p>使用Syncfusion在Blazor中显示自定义报告 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年5月20日 - 在上一个视频中,我们使用Bold Reports Designer创建了一个自定义报告。我们可以使用提供的Bold Reports Viewer来显示报告,但这并不总是符合您的要求。因此,今天我们将在Blazor Server应用程序中实现一个报告查看器。这样,我们可以在我们的网站内直接向客户展示我们的自定义报告,而不是将他们发送到单独的应用程序中。</p></li> <li><p>将WebAssembly引入.NET主流-Steve Sanderson - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年5月19日 - 许多开发人员仍然认为WebAssembly是一种与低级系统编程语言相关的前沿技术。然而,自2017年以来,C#和.NET就已经可以在WebAssembly上运行。Blazor WebAssembly将.NET引入了基于开放标准的浏览器中,现在已经成为.NET在企业、初创公司和爱好者中增长最快的部分之一。接下来,通过WASI,我们可以让您在更多地方运行.NET,为全球开发者社区的更广泛部分引入云原生工具和技术。这是一个技术性的演讲,展示了我们如何将.NET引入WebAssembly。Steve将演示它如何同时运行解释和AOT编译,IDE调试器如何附加,性能权衡以及从Emscripten迁移到WASI SDK如何使其在Wasmtime/Wasmer或像wasmCloud这样的更高级运行时中运行。其次,您将了解到Blazor作为一个开源项目的经验教训-在将WebAssembly引入早期采用者之外所面临的挑战和误解。</p></li> <li><p>使用ServiceStack在Blazor中进行快速开发模型和类型化的端到端服务 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年5月19日 - 在这个视频中,我们使用ServiceStack Blazor WASM模板,展示了使用类型化的端到端服务和Blazor构建业务应用程序的强大性。该模板提供了关注点清晰分离、类型化的端到端安全性以及由于共享的C#语言、Visual Studio Hot Reload和ServiceStack消息中心设计而带来的快速迭代。</p></li> <li><p>ASP.NET社区站立 - 让我们使用.NET MAUI和Blazor构建应用程序 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年5月17日 - 展示将Blazor WASM PWA迁移到.NET MAUI和Blazor Hybrid。社区链接。</p></li> <li><p>使Blazor与所有内容兼容,以及服务器上的WebAssembly - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年5月13日 - Steve Sanderson在NDC London 2022上的演讲。现实世界的软件项目通常涉及多种技术的组合。那么,现代Blazor是否足够强大和灵活,适合您团队的需求?在这个以演示为主的演讲中,Steve将展示Blazor WebAssembly/Server如何无缝嵌入其他语言(如Rust或C/C++)编写的库和逻辑,Blazor WebAssembly/Server组件如何在其他SPA框架(如React或Angular)中使用(或反之),以及Blazor组件如何不仅用于Web项目,还与macOS、iOS、Android和Windows的原生应用程序共享(包括WPF和WinForms)。这些功能应该使您的团队能够自信地承担最具雄心的项目。然后,我们将进一步展望未来,考虑WebAssembly如何超越浏览器,成为云原生服务器应用程序的基础元素。您将是第一个看到将.NET应用程序编译为符合WASI标准的通用二进制文件的实验性新方法,这些文件可以在任何操作系统或处理器上运行,具有强大的沙箱和出色的性能。</p></li> <li><p>使用Syncfusion在Blazor中创建自定义报告-PDF、Word、Excel和PowerPoint - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年5月13日 - 使用C#创建办公文件一直是一种受欢迎的解决方案。您可以生成用户熟悉的格式的报告。使用Syncfusion文件控件,您不仅可以创建Excel文件,还可以创建Microsoft Word文档、PowerPoint演示文稿和PDF文档。在这个视频中,我们将介绍Syncfusion中的办公文件控件以及如何使用它们。</p></li> <li><p>使用.NET和Blazor构建Microsoft Teams应用程序 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年5月11日 - John Miller加入James在本周的On .NET节目中,讨论了.NET开发人员如何完全使用C#、.NET和Blazor构建Microsoft Teams应用程序和机器人!John将向我们展示一切我们需要了解的内容,甚至如何发布Teams应用程序。</p></li> <li><p>Syncfusion中的Blazor控件介绍 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年5月11日 - Syncfusion中的Blazor控件非常强大。在这个视频中,我们将介绍DataGrid、图表、看板式面板、仪表板、自动完成文本框、上下文菜单、签名板、菜单栏、弹出消息等控件。实际上有很多控件要介绍,因此我们将有意忽略办公文件创建和显示控件,以及报告。这样,我们今天可以在其他控件上花更多时间,然后在另一个视频中专注于办公文件。报告将有两个不同的视频专门介绍。</p></li> <li><p>使用BFF模式保护SPAs和Blazor应用程序 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年5月10日 - 现代Web开发意味着越来越多的应用程序代码在浏览器中运行。传统上,这是使用JavaScript完成的,但最近越来越多地使用C#/WASM和Blazor。这些现代应用程序通常还需要身份验证和单点登录,以及基于令牌的调用API的安全性-换句话说,OpenID Connect和OAuth 2。有不同的模式可以保护此类应用程序,本次演讲涵盖了各种方法的一些问题,特别是考虑到不断变化的浏览器环境。我们将以“前端后端”(或BFF)模式结束,这已成为这些方法中最安全和最稳定的模式。</p></li> <li><p>使用Azure DevOps和Static Web Apps进行多环境部署 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年5月5日 - 应用程序演示,使用Azure DevOps管道创建静态Web应用程序,添加Azure DevOps环境并配置批准,配置多阶段管道,静态Web应用程序命名的预览环境,Playwright测试,生产部署之前的手动批准,使用密码保护分段环境。源代码。</p></li> <li><p>On .NET Live - 在Blazor WASM中封装浏览器API - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年5月2日 - 在本周的节目中,Kristoffer Strube加入了小组,向我们展示了一个用于浏览器文件系统访问API的Blazor WASM封装。他带来了演示和代码分享,所以这是一个您不想错过的节目。</p></li> <li><p>使用BFF模式保护SPAs和Blazor应用程序 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年4月29日 - 在NDC Porto上,Dominick Baier介绍了使用BFF(前端后端)模式保护SPAs和Blazor应用程序的方法。</p></li> <li><p>Blazor中的状态管理 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年4月29日 - 在开发单页面应用程序时,状态管理是非常重要的一个方面。由于Blazor是一个基于组件的UI框架,当应用程序的状态发生变化时,我们如何更新UI呢?</p></li> <li><p>使用Blazor进行流式传输:REST、gRPC和SignalR - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年4月29日 - 使用Blazor进行流式传输:REST、gRPC和SignalR,由Carl Franklin在NDC Porto 2022上演讲。学习如何从服务器流式传输数据到客户端,以提高感知性能和增加可扩展性。Carl展示了流式传输的工作原理,以及如何使用这三种传输方式进行实现。</p></li> <li><p>C#中的SignalR入门第1部分 - 使用Blazor、WPF、最佳实践等 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年4月25日 - SignalR是一种连接两个或多个客户端进行实时通信的绝佳方式。最好的部分是,这个库只是对Web Sockets和Long-Polling等Web标准技术的封装。它只是让它们更容易使用。这意味着我们甚至可以将SignalR与其他客户端(如Java或JavaScript)一起使用。在这个视频中,我们将学习如何设置SignalR以及如何使用Web客户端和桌面客户端连接到它。在整个视频中,我们将涵盖最佳实践,以及如何在实际应用中使用它。</p></li> <li><p>重新审视MVVM - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年4月21日 - Carl重新审视了使用Blazor的MVVM主题,澄清了您的选择。</p></li> <li><p>可查询的存储库 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年4月14日 - 构建一个客户端可以查询的通用存储库。</p></li> <li><p>ASP.NET社区站立 - Blazorators:Blazor C#源代码生成器 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年4月12日 - David Pine在本月的Blazor社区站立上介绍了Blazorators,Blazor C#源代码生成器。社区链接。</p></li> <li><p>.NET MAUI Blazor - 构建混合移动、桌面和Web应用程序 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年4月1日 - Blazor使得使用.NET构建客户端Web UI成为可能,但有时您需要更多的功能。有时您需要完全访问设备的本机功能。现在,您可以在.NET MAUI应用程序中托管Blazor组件,使用Web UI构建跨平台本机应用程序。这些组件在.NET进程中运行,并使用本地互操作通道将Web UI呈现到嵌入的Web视图控件中。这种混合方法使您可以兼具本机和Web的优点。您的组件可以通过.NET平台访问本机功能,并呈现标准的Web UI。.NET MAUI Blazor应用程序可以在任何.NET MAUI上运行(Windows、Mac、iOS和Android)。</p></li> <li><p>使用Fluxor管理应用程序状态 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年3月31日 - 使用Fluxor进行应用程序状态管理,Flux/Redux库适用于Blazor。</p></li> <li><p>带有Identity的Blazor基础知识 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年3月14日 - Fritz向您展示如何将身份验证和授权连接到您的Blazor应用程序。我们将重点介绍如何将正确配置的Microsoft Identity应用程序连接到您的Blazor框架。</p></li> <li><p>ASP.NET社区站立 - 使用Blazor Hybrid创建本机客户端应用程序 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年3月8日 - 加入这个Blazor社区站立,了解如何使用Blazor Hybrid创建适用于Windows、iOS、Android和Mac的跨平台本机客户端应用程序。社区链接。</p></li> <li><p>使用Tailwind CSS构建漂亮的Blazor应用程序 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年3月2日 - Tailwind CSS已经成为一段时间以来越来越受欢迎的框架。它正在迅速成为在样式化应用程序时使用的顶级框架之一。它提供了一种与传统框架(如Bootstrap)不同的方法-基于实用程序的样式化。与使用预构建组件(导致您的应用程序看起来像网络上的其他应用程序)不同,您可以通过应用小而专注的CSS类来定制设计,从而为您的应用程序创建独特的样式。在这个演讲中,您将学习如何将Tailwind CSS的强大功能带到您的Blazor应用程序中。我们将从介绍Tailwind以及它与其他CSS框架的区别开始。然后,我们将进入一些代码,并看看如何将Tailwind与Blazor集成。在接下来的时间里,我们将探索Tailwind的各种功能,并看看我们可以为我们的Blazor应用程序创造多么美丽的界面。由Chris Sainty在NDC Oslo 2021上演讲。</p></li> <li><p>使用bUnit对Blazor组件进行最佳实践单元测试 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年3月1日 - 为什么要创建UI组件的测试?UI测试不是天生脆弱、运行缓慢且难以维护吗?由Egil Hansen在NDC Oslo 2021上演讲。</p></li> <li><p>使用CSharpFritz学习C# - Blazor应用程序托管 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年2月28日 - 您已经构建了Blazor应用程序,现在在哪里运行它?在这个充满演示的会议上,Fritz将介绍渐进式Web应用程序、使用Docker打包以及将Blazor应用程序部署到Azure。社区链接。</p></li> <li><p>Blazor、.NET 6和WebAssembly - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年2月21日 - Steve Sanderson在NDC Oslo 2021上的演讲。.NET 6对于Blazor来说是一个重要的版本,为.NET Web开发人员增加了许多强大的新功能。这个演讲将充满演示,让您了解这个热门框架的最新情况。</p></li> <li><p>使用Blazor构建经典冒险游戏 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年2月14日 - Blazor是一个免费且开源的Web框架,使开发人员能够使用C#和HTML创建Web应用程序。作为一名.NET开发人员,我也是经典指向和点击冒险游戏的忠实粉丝,我将我的Game-a-Tron 4000冒险游戏引擎移植到了Blazor上。</p></li> <li><p>ASP.NET社区站立 - Blazor .NET 7路线图 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年2月8日 - 了解Blazor在.NET 7中的计划。社区链接。</p></li> <li><p>C# Corner .NET大会第1天 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年1月24日 - 大会的第一天以Scott Hunter的主题演讲开始。第一天的重点是前端技术(Blazor)。会议网站。</p></li> <li><p>ASP.NET社区站立 - Blazor WebAssembly在.NET 6上 - <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 2022年1月11日 - 加入Blazor创始人Steve Sanderson,了解Blazor WebAssembly在.NET 6上的特殊情况。社区链接。</p></li> <li><p>档案 - 2021, 2020, 2019, 2018, 2017。</p></li> </ul> <h2>文章</h2> <ul> <li><p>状态没有改变?为什么和何时重新渲染 Blazor 组件 - 2023年4月12日 - 迟早,当您构建 Blazor UI 时,您会遇到一个情况,即您的组件在您期望时没有重新渲染。</p></li> <li><p>如何构建快速且可重用的 Blazor 代码 - 2023年4月3日 - 微软甚至提供了一个使用 Blazor 构建可重用组件的学习模块,展示了如何构建包含 Blazor 组件的 Razor 类库,将 Razor 类库打包供其他 Blazor 应用程序使用,并在 Blazor 应用程序中引用 Razor 类库并使用其组件。作者:Jeffrey T. Fritz。</p></li> <li><p>Blazor United - 解决 Blazor 的最大挑战? - 2023年2月23日 - .NET 8 中的 Blazor 将有一些重大变化,看起来非常有前途。</p></li> <li><p>Blazor NavigationManager - 2023年2月23日 - NavigationManager 是一种服务,使开发人员能够以编程方式将用户导航到不同的页面或外部 URI。在 ASP.NET Core 7 中,添加了一些新功能,使我们能够在页面之间解析简单状态并监听和拦截导航。在本文中,我们将介绍 NavigationManager 的基本功能,介绍 ASP.NET Core 7 中添加的新功能,讨论它如何适应 Blazor/.NET 生态系统,并最后介绍一个现在可以相对轻松实现的场景。</p></li> <li><p>宣布 .NET 8 预览版 1 - 2023年2月21日 - .NET 8 的第一个预览版已经准备好下载。这篇博文介绍了驱动增强开发的主要主题和目标。.NET 8 的预览版和候选版本将每月发布。正式版本将像往常一样在 11 月的 .NET Conf 中发布。</p></li> <li><p>使用 Blazor WASM 集成 Azure Active Directory 多租户 - 第 1 部分 - 2023年2月19日 - 这篇博客分为两部分。第一部分描述了在 Azure 上设置 Azure Active Directory 多租户的过程,第二部分描述了如何与 Blazor WASM 应用程序集成。源代码 <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 。</p></li> <li><p>在原生 Blazor 应用程序中嵌入报表 - 2023年2月14日 - 查看使用 Telerik UI for Blazor 控件实现的最新 Progress Telerik Reporting 查看器的设置和自定义,包括 Blazor Wasm 和 Blazor Server。</p></li> <li><p>宣布 Blazorise 1.2 - 2023年2月1日 - 发布 Blazorise v1.2,为框架带来了许多新功能、改进和错误修复。</p></li> <li><p>WebAssembly 的现状 - 2022 年和 2023 年 - 2023年1月30日 - 本文介绍了 WebAssembly(wasm)的当前状态。首先回顾了 2022 年的发展情况,然后尝试预测我认为 2023 年的发展方向。</p></li> <li><p>Blazor WebAssembly 简明指南 - 电子书更新 - 2023年1月30日 - Michael Washington 的电子书《Blazor WebAssembly 简明指南》的第二版。</p></li> <li><p>在服务器端 Blazor 中播放动态音频 - 2023年1月28日 - 您可以在 Blazor Server 应用程序中播放动态音频,并完全控制用户界面。关于本文的 YouTube 视频。</p></li> <li><p>.NET MAUI Blazor - 移动 UI 的最佳实践 - 2023年1月27日 - Blazor 和 .NET MAUI 都是强大的框架。使用 .NET MAUI,您可以构建完全本机的跨平台应用程序,并使用 Blazor 完全使用 C# 构建 Web 应用程序。但是,当您将它们与 MAUI Blazor 模板结合使用时,您需要知道它应该感觉像一个移动应用程序,而不是一个网页。本文解释了一些技巧和诀窍。</p></li> <li><p>Steve Sanderson 通过 "Blazor United" 为 .NET 8 吸引了 Web 开发人员 - 2023年1月26日 - 我们开始了一些实验,将 Razor Pages、Blazor Server 和 Blazor WebAssembly 的优势结合到一个项目中。</p></li> <li><p>使用 WebAssembly 从 JavaScript 中调用 .NET 代码 - 2023年1月23日 - Blazor WebAssembly 允许在浏览器中运行 .NET Web 应用程序。从 .NET 7 开始,您可以轻松地从 JavaScript 中运行任何 .NET 方法,而无需整个 Blazor 框架。让我们看看如何从 JavaScript 中运行 .NET 方法。</p></li> <li><p>改善 Blazor 启动过程的用户体验 - 2023年1月21日 - 您可以使用 Blazor 做很多事情:PWA、SSR、SPA、混合应用程序...每种模式下用户看到第一个页面的过程都不同。</p></li> <li><p>通过提供自定义 ICU 数据来减小 Blazor WASM 的大小 - 2023年1月16日 - 通过提供自定义 ICU 数据来减小 Blazor WASM 的大小。</p></li> <li><p>在 HTML 或 React 中使用 Blazor 自定义元素 - 2022年12月22日 - 自 .NET 7.0 版本以来,Microsoft 增强并集成了创建 HTML 自定义元素 的能力。这些自定义元素为开发人员提供了一种创建自己的功能齐全的 DOM 元素的方法。在 Blazor 中,这允许将这些组件发布到其他 SPA 框架(如 Angular 或 React)。有关详细信息,请参阅 Microsoft 文档。</p></li> <li><p>使用 .NET 7、Blazor 和 .NET MAUI 构建自己的播客应用程序 - 2022年12月19日 - .NET Podcast 应用程序首次在 .NET Conf 2021 上亮相,并最近更新以突出显示 .NET 7 中的新功能。播客应用程序是一个可用的示例应用程序,展示了 .NET、ASP.NET Core、Blazor、.NET MAUI、Azure 容器应用程序、Orleans、Power Platform、Playwright 等的新功能。本文解释了所有新功能,并展示了我们如何升级 .NET Podcast 应用程序以利用这些功能。</p></li> <li><p>.NET 与 WASM 的未来 - 2022年12月15日 - 本文介绍了在浏览器之外使用 WASM 的好处,以及它作为服务器上的一种变革性技术的潜力。</p></li> <li><p>从 Blazor WebAssembly (WASM) 应用程序使用 Keycloak 作为身份提供者 - 2022年12月8日 - 了解如何从 Blazor WASM 集成 Keycloak。创建一个公共客户端,并使用 Microsoft.AspNetCore.Components.WebAssembly.Authentication 的内置功能,与符合 OpenId Connect 的提供者集成。源代码 <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"> 包含 ChartJs。</p></li> <li><p>Microsoft Fluent UI 库为 Blazor 版本 2.0 带来了什么新功能 - 2022年12月5日 - Microsoft Fluent UI 库为 Blazor 版本 2.0 带来了什么新功能。</p></li> <li><p>使用 Blazor 构建管理 Viva Learning 中自定义提供程序的 Web 应用程序 - 2022年11月29日 - 在本文中,我们将重复使用我们学到的概念来构建更好的体验:一个 Web 应用程序,我们可以用它来管理我们的自定义学习提供程序及其内容。我们将重点介绍如何在真实应用程序中实现我们已经了解的这些 API 的一些特殊功能,例如根据您正在处理的内容类型需要不同的权限集。</p></li> <li><p>维护版本发布:Blazorise 1.1.4 - 2022年11月24日 - 这个新的 Blazorise 1.1.4 是一个热修复版本,解决了这个问题以及其他一些较小的问题。对于所有 Blazorise 1.1 和 Blazorise 1.1.3 的用户,Blazorise 1.1.4 是一个推荐的升级版本。</p></li> <li><p>Blazor WebAssembly:使用自定义 Chrome 开发者工具调试 gRPC-Web - 2022年11月17日 - 如果您正在使用 Blazor,gRPC 是将数据从 API 传输到客户端的一个大问题。使用 gRPC-Web 进行开发的一个问题是调试传输的数据,因为数据是以高效的二进制消息格式。本文将向您展示如何使用我的 NuGet 解决此问题。</p></li> <li><p>发布:Blazorise 1.1.3 - 2022年11月8日 - 这个 Blazorise 版本本应只是一个小的维护版本。然而,我们得到了一些相对较大的功能和公告,包括对 .NET 7 的支持。</p></li> <li><p>容器化的 Blazor:Microsoft 考虑为客户端 Blazor WebAssembly 应用程序提供内置容器支持 - 2022年11月2日 - Microsoft 正在探索为客户端 Blazor WebAssembly 应用程序提供内置容器支持。Visual Studio Magazine 上的文章。</p></li> <li><p>在 Blazor Web Assembly 中上传前调整图像大小 - 2022年10月31日 - 在 Blazor Web Assembly 中上传前调整图像大小。</p></li> <li><p>尝试使用 Docker 上的 .NET 7、WASM 和 WASI 进行实验 - 2022年10月31日 - 在 10 月 24 日,Docker 宣布在新的技术预览版本中支持 WASM 和 WASI。本文尝试使用 .NET 7 进行实验,并看看它如何与 WASM 一起工作。</p></li> <li><p>如何使用 Razor 类库在各处运行 Blazor 项目? - 2022年10月29日 - Blazor 的一个很酷的功能是代码的可重用性。使用 Razor 类库,我们可以在所有 Blazor 类型的项目中使用我们的 Razor 组件,如 Blazor Server、WASM 和 MAUI Hybrid。</p></li> <li><p>使用 WASM 和 WASI 在 Raspberry PI Zero 2 W 上运行 .NET 7 - 2022年10月29日 - 本文将向您展示如何使用 WASM 和 WASI 在 Raspberry PI Zero 2 W 上运行 .NET 7。</p></li> <li><p>介绍 Docker+Wasm 技术预览版 - 2022年10月24日 - Docker+Wasm 的技术预览版现已推出!Wasm 最近引起了很多关注,这个功能将使您能够更轻松地快速构建针对 Wasm 运行时的应用程序。</p></li> <li><p>第 1 部分 - 由 Elsa 工作流驱动的用户界面 - 2022年10月12日 - 本系列描述了由 Elsa 工作流引擎驱动的用户界面的实现。</p></li> <li><p>.NET 7 发布候选版 2 中的 ASP.NET Core 更新 - 2022年10月11日 - .NET 7 发布候选版 2 (RC2) 现已发布,其中包含许多 ASP.NET Core 和 Blazor 的重大改进:改进了 Blazor WebAssembly 中的身份验证诊断和 WebAssembly 多线程(实验性)。</p></li> <li><p>无需等待 .NET 8 即可尝试实验性的 WebAssembly 多线程 - 2022年10月11日 - 客户端 Blazor WebAssembly 应用程序的多线程支持计划于 2023 年 11 月的 .NET 8 中推出,但开发人员现在可以通过全新的 .NET 7 发布候选版 2 中的实验功能来尝试它。</p></li> <li><p>使用 .NET 7 的 Blazor 自定义元素呈现动态内容 - 2022年10月5日 - 使用 .NET 7 的 Blazor 自定义元素呈现动态内容,作者:Jon Hilton。</p></li> <li><p>创建通用的树视图 Blazor 组件 - 2022年10月4日 - 本文展示了一个可以以树视图递归显示对象的 Blazor 组件。该组件是作为项目 FHIR Watch 的一部分而创建的,FHIR Watch 是一个用于比较来自两个不同数据源的 FHIR 数据的工具:FHIR API 服务和 Dataverse。因此,它特别适用于显示 FHIR 数据。</p></li> <li><p>Blazor WebAssembly 的干净架构解决方案模板 - 2022年9月30日 - 本文展示了如何安装新模板,使用模板创建和运行新应用程序,然后分享一些推荐的资源。</p></li> <li><p>WebAssembly 在 .NET 7 RC1 中成为 ASP.NET Core 的焦点 - 2022年9月20日 - WebAssembly,使客户端端 Blazor 工作的开源技术,成为新的 ASP.NET Core 更新中的焦点。</p></li> <li><p>C# / Blazor Wolfenstein - 第 7 部分 - 实心墙、门和 C# 观察 - 2022年9月20日 - 解释如何将游戏 Wolfenstein 3D 移植到 C# 和 Blazor 的文章的第 7 部分。源代码 <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0">。</p></li> <li><p>C# / Blazor Wolfenstein - 第 6 部分 - 基本射线投射器 - 2022年9月18日 - 解释如何将游戏 Wolfenstein 3D 移植到 C# 和 Blazor 的文章的第 6 部分。源代码 <img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0"><img src="http://img.e-com-net.com/image/info8/2d6045e427854243a34b5a46f6cd5ca4.png" alt="outside_default.png" width="0" height="0">。</p></li> <li><p>ASP.NET Core 更新中的 .NET 7 发布候选版 1 - 2022年9月14日 - .NET 7 发布候选版 1 (RC1) 现已发布,其中包含许多 ASP.NET Core 的重大改进。</p></li> <li><p>为什么即使重新加载,您的支持离线的 Blazor WebAssembly PWA 也无法更新? - 2022年9月7日 - 请想象一下,您有一个支持离线模式的 Blazor WebAssembly PWA 站点,并且一直在通过 Web 浏览器打开该 PWA。如果您发布了该 PWA 的新版本,您可能希望进行验证,我猜测。在这种情况下,您将重新加载该 Web 浏览器上的页面。然而,即使您进行硬刷新,您也可能意外地看不到新版本的内容。</p></li> <li><p>为 Blazor WebAssembly 实现 OpenAPI 支持 - 2022年9月2日 - OpenAPI 是一种语言无关的规范,用于记录 RESTful API。它使人类和计算机都能够了解服务的功能,而无需访问代码、文档或使用其他方法。托管的 Blazor WebAssembly 应用程序包括用于文件和 API 访问的 ASP.NET Core 后端,因此实现对 OpenAPI 的支持提供了许多好处。</p></li> <li><p>.NET Blazor WASM 调试故障排除 - 2022年8月30日 - .NET Blazor WASM 调试故障排除。</p></li> <li><p>Oqtane 3.1.4发布 - 2022年7月27日 - 3.1.4版本主要集中在稳定性方面。这包括各种性能优化、用户体验改进和本地化增强。</p></li> <li><p>ClassFly UI - XAML vs Blazor - 第1部分 - XAML - 2022年7月23日 - 这个系列文章比较了XAML和Blazor的方法。将使用XAML和Blazor创建相同的应用程序,以发现优缺点。第1部分专注于XAML。</p></li> <li><p>使用Azure Static Web Apps对Blazor WebAssembly进行身份验证 - 2022年7月22日 - Azure Static Web Apps是托管Blazor WebAssembly应用程序的绝佳选择。在Static Web Apps的众多功能中,它具有使用社交登录进行身份验证的内置支持。在本文中,我们将看看如何在Blazor WebAssembly应用程序中利用Static Web Apps身份验证。作者是来自微软的Anthony Chu。</p></li> <li><p>使用依赖注入共享Blazor组件 - 2022年7月19日 - 使用依赖注入共享Blazor组件。</p></li> <li><p>在Razor组件中使用IAsyncEnumerable - 2022年7月18日 - 在Razor组件中使用IAsyncEnumerable。</p></li> <li><p>Blazor贴纸赠送活动 - 2022年7月15日 - 在Visual Studio中尝试新的Blazor指南。继续阅读以了解如何尝试并有机会获得贴纸。</p></li> <li><p>.NET 7 Preview 6中的ASP.NET Core更新 - 2022年7月12日 - .NET 7 Preview 6现已发布,包含许多对ASP.NET Core的重大改进。Blazor自定义元素不再是实验性的,Blazor的实验性QuickGrid组件,WebAssembly上的System.Security.Cryptography支持,空的Blazor项目模板等等。有关.NET 7中计划的ASP.NET Core工作的更多详细信息,请参阅GitHub上的完整ASP.NET Core .NET 7路线图。</p></li> <li><p>Uno Platform在.NET 7之前几个月实现了WebAssembly线程 - 2022年6月29日 - Uno Platform在.NET 7之前几个月实现了WebAssembly线程,作者是David Ramel,发表在Visual Studio Magazine上。</p></li> <li><p>我为什么为Blazor应用程序创建了另一个下载库的3个原因 - 2022年6月29日 - 我为什么为Blazor应用程序创建了另一个下载库的3个原因。</p></li> <li><p>Blazor在WebAssembly使用中取得最大增长:报告 - 2022年6月24日 - Blazor在WebAssembly使用中取得最大增长:报告,作者是David Ramel,发表在Visual Studio Magazine上。</p></li> <li><p>在Blazor项目中实现RavenDB时间序列 - 2022年6月21日 - 在Blazor项目中实现RavenDB时间序列。</p></li> <li><p>Microsoft Fluent UI库的Blazor版本1.3和1.4中的新功能 - 2022年6月9日 - FAST团队和其他人一直在努力不仅改进Microsoft的核心Web组件平台,还改进了Blazor的Fluent UI集成。本文将为您介绍版本1.3和1.4的新功能和更改的概述Microsoft Fluent UI Blazor库。</p></li> <li><p>使用Blazor WebAssembly和GraphQL创建全栈Web应用程序:第3部分 - 2022年6月8日 - 使用Blazor WebAssembly和GraphQL创建全栈Web应用程序:第3部分。第1部分。</p></li> <li><p>Blazor中的依赖注入作用域 - 2022年5月31日 - 依赖注入系统是现代ASP.NET Core内部工作的重要组成部分:它为开发人员提供了一种灵活的解决方案,用于构建项目、解耦依赖项并控制应用程序中组件的生命周期。然而,在Blazor - ASP.NET Core的一个新部分中,DI系统感觉有点奇怪,事情似乎与预期有些不同。本文将解释为什么这不仅仅是一种感觉,而是确实是第一位的情况,以及如何处理这些差异,以避免以后出现问题。</p></li> <li><p>.NET 7 Preview 4中的ASP.NET Core更新 - 2022年5月10日 - .NET 7 Preview 4现已发布,包含许多对ASP.NET Core的重大改进。来自微软的Dan Roth撰写的文章。</p></li> <li><p>关于Blazor的深入探讨问答 - 2022年5月9日 - 关于Blazor的深入探讨问答,发表在Visual Studio Magazine上。</p></li> <li><p>Syncfusion Essential Studio发布增强了.NET MAUI、WinUI、Blazor等 - 2022年5月6日 - Syncfusion Essential Studio发布增强了.NET MAUI、WinUI、Blazor等,发表在Visual Studio Magazine上。</p></li> <li><p>使用查询字符串在Blazor页面之间传递选定值的数组 - 2022年4月28日 - 使用查询字符串在Blazor页面之间传递选定值的数组。</p></li> <li><p>使用Docker容器化Blazor WASM、ASPNET Core WebApi、NGINX和Let's Encrypt - 2022年4月26日 - 关于将由多个Blazor WASM应用程序、ASPNET Core Web Api、NGINX和Let's Encrypt SSL证书组成的复杂系统容器化的指南。</p></li> <li><p>Blazor WebAssembly:在浏览器中使用EF Core和SQLite的强大功能 - 2022年4月12日 - 预览如何在浏览器中使用Blazor WebAssembly使用SQLite和EF Core的强大功能。</p></li> <li><p>精通Blazor - 第1部分:DOM集成 - 2022年3月31日 - 精通Blazor - 第1部分:DOM集成。</p></li> <li><p>条件Blazor样式(无需if语句) - 2022年3月24日 - 条件Blazor样式(无需if语句)。</p></li> <li><p>使用Azure Active Directory保护Blazor WebAssembly托管应用程序 - 2022年3月18日 - 使用Azure Active Directory保护Blazor WebAssembly托管应用程序。第2部分。</p></li> <li><p>使用Blazor WebAssembly和GraphQL创建全栈Web应用程序:第1部分 - 2022年2月17日 - 本文介绍了如何使用Blazor WebAssembly和GraphQL以及SQL Server作为数据库创建全栈Web应用程序。</p></li> <li><p>.NET 7中Blazor Hybrid的新功能 - 2022年2月10日 - .NET 7中Blazor Hybrid的新功能,发表在Visual Studio Magazine上。</p></li> <li><p>在开发Blazor应用程序时使用Tailwind的新JIT模式 - 2022年1月19日 - 在开发Blazor应用程序时使用Tailwind的新JIT模式。</p></li> <li><p>存档 - 2021,2020,2019,2018,2017。</p></li> </ul> </div> </div> </div> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1689764614864187392"></div> <script type="text/javascript" src="/views/front/js/chanyan.js"></script> <!-- 文章页-底部 动态广告位 --> <div class="youdao-fixed-ad" id="detail_ad_bottom"></div> </div> <div class="col-md-3"> <div class="row" id="ad"> <!-- 文章页-右侧1 动态广告位 --> <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_1"> </div> </div> <!-- 文章页-右侧2 动态广告位 --> <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_2"></div> </div> <!-- 文章页-右侧3 动态广告位 --> <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_3"></div> </div> </div> </div> </div> </div> </div> <div class="container"> <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(Blazor资源大全,很棒的Blazor(2))</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1903902144604467200.htm" title="数据结构-----队列" target="_blank">数据结构-----队列</a> <span class="text-muted">磨十三</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/1.htm">数据结构</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a> <div>顺序队列(Queue)一、队列核心概念1.基本特性先进先出(FIFO):最早入队的元素最先出队操作限制:队尾(Rear):唯一允许插入的位置队头(Front):唯一允许删除的位置2.顺序队列结构typedefintDATATYPE;typedefstructqueue{DATATYPE*ptr;//存储空间基地址inttlen;//队列总容量inthead;//队头索引inttail;//队尾索引</div> </li> <li><a href="/article/1903900632503349248.htm" title="RestTemplate和RPC区别" target="_blank">RestTemplate和RPC区别</a> <span class="text-muted">酷爱码</span> <a class="tag" taget="_blank" href="/search/%E7%BB%8F%E9%AA%8C%E5%88%86%E4%BA%AB/1.htm">经验分享</a><a class="tag" taget="_blank" href="/search/rpc/1.htm">rpc</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C%E5%8D%8F%E8%AE%AE/1.htm">网络协议</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a> <div>RestTemplate是Spring框架中用于进行RESTful风格的HTTP请求的模板类,通常用于与外部服务进行通信。它基于HTTP协议,使用GET、POST、PUT、DELETE等HTTP方法来进行通信,传输的数据通常使用JSON或XML格式。它是一种基于资源的通信方式,通过URL来标识资源。RPC(RemoteProcedureCall)是一种远程过程调用的通信机制,用于不同进程或不同主机</div> </li> <li><a href="/article/1903900633430290432.htm" title="【Python】PDFMiner.six:高效处理PDF文档的Python工具" target="_blank">【Python】PDFMiner.six:高效处理PDF文档的Python工具</a> <span class="text-muted">技术无疆</span> <a class="tag" taget="_blank" href="/search/Python/1.htm">Python</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/pdf/1.htm">pdf</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/python3.11/1.htm">python3.11</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E6%8C%96%E6%8E%98/1.htm">数据挖掘</a><a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">机器学习</a> <div>PDF是一种广泛使用的文件格式,特别适用于呈现固定布局的文档。然而,提取PDF文件中的文本和信息并不总是那么简单。幸好有许多Python库可以帮助我们,其中,PDFMiner.six是一个功能强大、专门用于PDF文档解析的库。⭕️宇宙起点什么是PDFMiner.six?主要功能安装PDFMiner.six♨️核心功能和代码示例1.提取PDF文档的纯文本2.从多个页面提取文本3.提取PDF中的表格内</div> </li> <li><a href="/article/1903900506175107072.htm" title="从边缘到核心:群联云防护如何重新定义安全加速边界?" target="_blank">从边缘到核心:群联云防护如何重新定义安全加速边界?</a> <span class="text-muted">群联云防护小杜</span> <a class="tag" taget="_blank" href="/search/%E5%AE%89%E5%85%A8%E9%97%AE%E9%A2%98%E6%B1%87%E6%80%BB/1.htm">安全问题汇总</a><a class="tag" taget="_blank" href="/search/%E5%AE%89%E5%85%A8/1.htm">安全</a><a class="tag" taget="_blank" href="/search/%E5%88%86%E5%B8%83%E5%BC%8F/1.htm">分布式</a><a class="tag" taget="_blank" href="/search/ddos/1.htm">ddos</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/node.js/1.htm">node.js</a><a class="tag" taget="_blank" href="/search/udp/1.htm">udp</a> <div>一、安全能力的全方位碾压1.协议层深度防护四层防御:动态过滤畸形TCP/UDP包(如SYNFlood),传统CDN仅限速率控制。技术示例:基于AI的协议指纹分析,拦截异常连接模式。七层防御:精准识别业务逻辑攻击(如薅羊毛API调用),CDN仅支持基础URL黑名单。文档引用:“支持基于HTTP头部字段的多条件组合精准访问控制”(产品文档)。2.资源调度与成本优势节点复用:群联共享节点池降低单客户成本</div> </li> <li><a href="/article/1903900505680179200.htm" title="25道Python练手题(附详细答案),赶紧收藏!_python题库" target="_blank">25道Python练手题(附详细答案),赶紧收藏!_python题库</a> <span class="text-muted">字节全栈_rJF</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>importrandomasrdnumber=rd.randint(0,100)foriinrange(10):choice=int(input("请输入你要猜测的数字:"))ifchoice>number:print("你猜大了")elifchoice0and5*x+3*y+z/3==100:count+=1print("="*60)print(f'第{count}种买法,公鸡买了{x}只,母鸡</div> </li> <li><a href="/article/1903899624310108160.htm" title="python爱心代码高级" target="_blank">python爱心代码高级</a> <span class="text-muted">youyouxiong</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>在Python中,我们可以使用各种方法来绘制一个“爱心”形状。以下是一个使用turtle模块绘制爱心的高级示例。这个示例将使用更复杂的数学公式和图形操作来绘制一个更精致的爱心形状。importturtleimportmath#设置初始状态window=turtle.Screen()window.bgcolor("black")#设置背景色为黑色love=turtle.Turtle()love.sp</div> </li> <li><a href="/article/1903898994506002432.htm" title="python画一个爱心" target="_blank">python画一个爱心</a> <span class="text-muted">戴子雯</span> <a class="tag" taget="_blank" href="/search/python%E7%BB%98%E7%94%BB/1.htm">python绘画</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a> <div>大家好这是我的地一篇博客,我要写一个关于python的文章我要用python写一个爱心。不说别的,先看效果效果如下:话不多说,上代码,在这之前要下载python下载这事咱们放在最后现在上代码!!!!!!!!!!!!!!importturtleastt.pensize(2)#笔大小2像素t.pencolor("red")#颜色为红色t.left</div> </li> <li><a href="/article/1903898742252171264.htm" title="深入浅出:序列化与反序列化的全面解析" target="_blank">深入浅出:序列化与反序列化的全面解析</a> <span class="text-muted">进击的小白菜</span> <a class="tag" taget="_blank" href="/search/%E4%B8%80%E4%BA%9B%E5%BC%80%E5%8F%91%E5%B8%B8%E8%AF%86/1.htm">一些开发常识</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E5%B8%B8%E8%AF%86/1.htm">开发常识</a> <div>文章目录1.引言2.什么是序列化?2.1为什么需要序列化?3.什么是反序列化?3.1反序列化的重要性4.序列化与反序列化的实现4.1JSON(JavaScriptObjectNotation)4.2XML(eXtensibleMarkupLanguage)4.3ProtocolBuffers(Protobuf)4.4MessagePack5.安全性考虑6.性能优化7.结论附录:常见问题解答Q1:什</div> </li> <li><a href="/article/1903898489847345152.htm" title="ZTE R218 4G Mobile WiFi Router Review" target="_blank">ZTE R218 4G Mobile WiFi Router Review</a> <span class="text-muted">小2不语</span> <a class="tag" taget="_blank" href="/search/LTE/1.htm">LTE</a><a class="tag" taget="_blank" href="/search/Router/1.htm">Router</a><a class="tag" taget="_blank" href="/search/zte/1.htm">zte</a><a class="tag" taget="_blank" href="/search/r218/1.htm">r218</a> <div>IfyouhadknowntheZTEMF9204GMiFirouter,youwillknowtheZTER218soonafterwetellyoutheR218comesfromtheZTEMF920withVodafonecustomization.VodafoneintroducedtheMF920toitsproductrangeandrenameitasR218.Theofficia</div> </li> <li><a href="/article/1903897230155247616.htm" title="brew 安装pip_pip brew wget 安装" target="_blank">brew 安装pip_pip brew wget 安装</a> <span class="text-muted">weixin_32612253</span> <a class="tag" taget="_blank" href="/search/brew/1.htm">brew</a><a class="tag" taget="_blank" href="/search/%E5%AE%89%E8%A3%85pip/1.htm">安装pip</a> <div>终端播放器安装教程从简书上看到一篇,终端实现网易云音乐的文章,并给出了一个github链接.心里有些痒痒,想看看是什么样子,于是尝试安装.安装过程中有些坎坷,记录以便以后查阅.程序实现是用Python写的.安装使用方式仅仅给了三行命令.安装$pipinstallnetease-musicbox$brewinstallmpg123使用$musicbox下载了源码后,不知道该如何安装.三行命令也是莫名</div> </li> <li><a href="/article/1903896851413790720.htm" title="Centos使用docker搭建Graylog日志平台" target="_blank">Centos使用docker搭建Graylog日志平台</a> <span class="text-muted">moxiaoran5753</span> <a class="tag" taget="_blank" href="/search/centos/1.htm">centos</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/graylog/1.htm">graylog</a> <div>日志管理系统有很多,比如ELK,Graylog,Loki+Grafana+Promtail适用场景:1.如果需求复杂,服务器资源不受限制,推荐使用ELK(Logstash+Elasticsearch+Kibana)方案;2.如果需求仅是将不同服务器上的日志采集上来集中展示和检索,且需要一个轻量级的框架,那使用PLG(Promtail+Loki+Grafana)最合适不过了。3.Graylog专注于</div> </li> <li><a href="/article/1903896852005187584.htm" title="使用 Baseten 部署和运行机器学习模型的指南" target="_blank">使用 Baseten 部署和运行机器学习模型的指南</a> <span class="text-muted">shuoac</span> <a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0/1.htm">机器学习</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a> <div>随着机器学习模型在各个行业中的广泛应用,如何高效地部署和运行这些模型成为一个关键问题。本文将介绍如何使用Baseten平台来部署和服务机器学习模型。Baseten是LangChain生态系统中的一个重要提供者,它提供了所需的基础设施来高效地运行模型。无论是开源模型如Llama2和Mistral,还是专有或经过微调的模型,Baseten都能在专用GPU上运行。技术背景介绍Baseten提供了一种不同</div> </li> <li><a href="/article/1903896725135880192.htm" title="Intent实现参数的传递以及Activity详解" target="_blank">Intent实现参数的传递以及Activity详解</a> <span class="text-muted">qqmuhua123</span> <div>Activity是用户唯一可以看得到的东西。几乎所有的activity都与用户进行交互,所以Activity主要负责的就是创建显示窗口,你可以在这些窗口里使用setContentView(View)来显示你自己的UI。onCreate(Bundle)这个方法是初始化activity的地方.最重要的是,你经常需要在这里使用setContentView(int)来设置UI布局所使用的layout资源,</div> </li> <li><a href="/article/1903896724045361152.htm" title="从5G向6G演进的三维连接" target="_blank">从5G向6G演进的三维连接</a> <span class="text-muted">宋罗世家技术屋</span> <a class="tag" taget="_blank" href="/search/%E6%99%BA%E8%83%BD%E7%A7%91%E5%AD%A6%E4%B8%8E%E6%8A%80%E6%9C%AF%E4%B8%93%E6%A0%8F/1.htm">智能科学与技术专栏</a><a class="tag" taget="_blank" href="/search/5G/1.htm">5G</a> <div>【摘要】三维连接技术作为地面网络(TN)与非地面网络(NTN)的融合组网技术,既能解决TN空天地海覆盖受限与NTN服务场景受限问题,又能促进后5G(B5G)与6G网络基础设施产业链的健康发展。首先简述了三维连接技术的发展历程,然后重点介绍了未来两年将要完成的5GNTN标准需求、部署结构、空中接口、频谱与终端方面的设计考虑,最后给出了对未来B5G/6G三维连接技术展望,提出了需要全球产学研机构共同研</div> </li> <li><a href="/article/1903896343613599744.htm" title="MotionLayout(二):MotionLayout是什么?MotionLayout调试技巧、KeyFrame关键帧等等" target="_blank">MotionLayout(二):MotionLayout是什么?MotionLayout调试技巧、KeyFrame关键帧等等</a> <span class="text-muted">前期后期</span> <a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/kotlin/1.htm">kotlin</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a> <div>一、MotionLayout是什么?●定位:AndroidJetpack中的高级布局容器,继承自ConstraintLayout。●核心功能:通过状态(State)和过渡(Transition)定义复杂的界面动画,支持手势交互、路径动画等。●优势:简化动画开发流程,替代传统Animator或TransitionManager,适合处理多视图联动、复杂转场效果。1.1应用场景使用MotionLayo</div> </li> <li><a href="/article/1903896345190658048.htm" title="Android 使用设计模式:装饰者设计模式,对功能进行封装升级,学会可以让我们的代码更加的简洁。" target="_blank">Android 使用设计模式:装饰者设计模式,对功能进行封装升级,学会可以让我们的代码更加的简洁。</a> <span class="text-muted">前期后期</span> <a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a> <div>一、前言我遇到什么问题要使用装饰者设计模式?看源码的时候:我们发现明明ui有一个功能,但是在这个ui类找不到,后来发现,这个ui被当做一个参数传递到了一个类里面,后来才在这个类里找到了这个功能。突然醍醐灌顶,这不就是装饰者设计模式吗?写代码的时候:如果我们想给一个功能增加新的东西,可以借助装饰者设计模式来装饰,如果不需要则可以把这个方法去掉,非常的简洁和优雅,并且新增的功能放到了另外一个类里面,也</div> </li> <li><a href="/article/1903896346037907456.htm" title="Android :实现登录功能的思路" target="_blank">Android :实现登录功能的思路</a> <span class="text-muted">前期后期</span> <a class="tag" taget="_blank" href="/search/android/1.htm">android</a> <div>android的登录功能和前端一样,需要保存登录的用户信息。创建一个工具类//用户工具类,用于管理用户登录状态和用户信息objectAppUserUtil{//常量定义privateconstvalLOGGED_FLAG="logged_flag"//登录状态的键名privateconstvalUSER_INFO="user_info"//用户信息的键名privateconstvalTAG="Ap</div> </li> <li><a href="/article/1903896217243414528.htm" title="多级缓存设计实践" target="_blank">多级缓存设计实践</a> <span class="text-muted">MClink</span> <a class="tag" taget="_blank" href="/search/%E6%9E%B6%E6%9E%84/1.htm">架构</a><a class="tag" taget="_blank" href="/search/%E7%BC%93%E5%AD%98/1.htm">缓存</a> <div>缓存是什么?缓存技术是一种用于加速数据访问的优化策略。它通过将频繁访问的数据存储在高速存储介质(如内存)中,减少对慢速存储设备(如硬盘或远程服务器)的访问次数,从而提升系统的响应速度和性能。缓存的基本原理是:当某个数据被请求时,系统首先检查缓存中是否已存储该数据。如果缓存中存在,则直接返回缓存中的数据,称为“缓存命中”;如果缓存中没有该数据,则从源数据存储(如数据库或远程服务器)中获取数据,并将其</div> </li> <li><a href="/article/1903896090780954624.htm" title="Centos7部署Graylog5.2日志系统" target="_blank">Centos7部署Graylog5.2日志系统</a> <span class="text-muted">LoongKK</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/ssh/1.htm">ssh</a><a class="tag" taget="_blank" href="/search/graylog/1.htm">graylog</a><a class="tag" taget="_blank" href="/search/centos/1.htm">centos</a><a class="tag" taget="_blank" href="/search/%E6%97%A5%E5%BF%97/1.htm">日志</a> <div>Graylog5.2部署Graylog5.2适配MongoDB5.x~6.x,MongoDB5.0+要求CPU支持AVX指令集。主机说明localhost部署Graylog,需要安装mongodb-org-6.0、Elasticsearch7.10.2参考:https://blog.csdn.net/qixiaolinlin/article/details/129966703https://blo</div> </li> <li><a href="/article/1903895712647671808.htm" title="探索Google AI聊天模型的集成和使用" target="_blank">探索Google AI聊天模型的集成和使用</a> <span class="text-muted">qahaj</span> <a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a> <div>随着人工智能的飞速发展,GoogleAI的聊天模型提供了强大的自然语言处理能力,可以应用于多种场景中。本文将为你介绍如何通过GoogleAI和LangChain库来使用这些聊天模型。技术背景介绍GoogleAI提供了一系列强大的聊天模型,这些模型具备不同的功能和参数设置。它们不仅可以通过GoogleAI服务访问,还可以通过GoogleCloudVertexAI以企业级功能使用。在本文中,我们将重点</div> </li> <li><a href="/article/1903895459286544384.htm" title="Windows 图形显示驱动开发-WDDM 2.7功能- 支持跨适配器资源扫描 (CASO)" target="_blank">Windows 图形显示驱动开发-WDDM 2.7功能- 支持跨适配器资源扫描 (CASO)</a> <span class="text-muted">程序员王马</span> <a class="tag" taget="_blank" href="/search/windows%E5%9B%BE%E5%BD%A2%E6%98%BE%E7%A4%BA%E9%A9%B1%E5%8A%A8%E5%BC%80%E5%8F%91/1.htm">windows图形显示驱动开发</a><a class="tag" taget="_blank" href="/search/windows/1.htm">windows</a><a class="tag" taget="_blank" href="/search/%E9%A9%B1%E5%8A%A8%E5%BC%80%E5%8F%91/1.htm">驱动开发</a> <div>Microsoft计算驱动程序模型概述在Windows10版本1903(WDDM2.6)及更高版本中,Microsoft计算驱动程序模型(MCDM)可用于为支持仅计算功能的设备编写驱动程序。MCDM驱动程序或仅计算驱动程序是Windows显示驱动程序模型2.0+(WDDM)的缩减子集。在WDDM术语中,驱动程序必须将自身播发为“仅呈现”设备,而无需显示功能。“呈现设备”的内核支持很灵活,因为设备执</div> </li> <li><a href="/article/1903895460335120384.htm" title="python实现绘制爱心函数(绘制过程)" target="_blank">python实现绘制爱心函数(绘制过程)</a> <span class="text-muted">halo0416</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>首先,确保已经安装了matplotlib库和numpy库。如果没有安装,可以通过pip来安装:pipinstallmatplotlibpipinstallnumpy了解心形函数公式:x(t)=y(t)=13cos⁡(t)−5cos⁡(2t)−2cos⁡(3t)−cos⁡(4t)定义函数:defheart_shape(t):x=16*np.sin(t)**3y=13*np.cos(t)-5*np.c</div> </li> <li><a href="/article/1903895456547663872.htm" title="一文读懂 Linux 下 Docker 搭建及简单应用" target="_blank">一文读懂 Linux 下 Docker 搭建及简单应用</a> <span class="text-muted">Waitccy</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a> <div>一、引言在Linux系统的运维与开发场景中,Docker凭借其高效的容器化技术,极大地简化了应用部署与管理流程。它打破了传统环境配置的复杂性,实现应用及其依赖的封装,确保在不同环境中稳定运行。本文将详细介绍在Linux系统下搭建Docker的步骤,并通过几个简单应用示例,带你快速上手Docker。二、Linux下Docker搭建(一)准备工作系统要求:建议使用主流的Linux发行版,如Ubuntu</div> </li> <li><a href="/article/1903895204360941568.htm" title="python 绘图(爱心)" target="_blank">python 绘图(爱心)</a> <span class="text-muted">@小H</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>#-*-coding:utf-8-*-fromturtleimport*defcurvemove():foriinrange(200):right(1)forward(1)color('red','pink')begin_fill()left(140)forward(111.65)curvemove()left(120)curvemove()forward(111.65)end_fill()don</div> </li> <li><a href="/article/1903894825967611904.htm" title="扫地机高增长神话破灭!科沃斯、石头科技艰难 “破冰”!" target="_blank">扫地机高增长神话破灭!科沃斯、石头科技艰难 “破冰”!</a> <span class="text-muted">liukuang110</span> <a class="tag" taget="_blank" href="/search/%E7%A7%91%E6%8A%80/1.htm">科技</a> <div>扫地机器人赛道太冷,陆续有企业倒在寒风里。先是,老牌研发商广东宝乐机器人宣布破产重整;曾获得腾讯和红杉资本大额融资,并邀请罗永浩代言的“追光”品牌,也在短短两年内宣告失败。就连雷军投资、小米生态链孵化的睿米科技,也发布了停止运营的通告。头部玩家近况亦不乐观。以科技创新而闻名的科沃斯业绩大幅下滑,在过去几个月中股价的剧烈下跌,引发了市场的高度关注与深刻反思。另一头部玩家石头科技,毛利率下滑、存货周转</div> </li> <li><a href="/article/1903894826445762560.htm" title="线程中run方法与start方法的差别" target="_blank">线程中run方法与start方法的差别</a> <span class="text-muted">夜君客</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>run()方法run()方法是Runnable接口中定义的方法,Thread类实现了Runnable接口。当你直接调用run()方法时,它会在当前线程中执行,而不会启动一个新的线程。也就是说,run()方法只是一个普通的方法调用,不会产生多线程的效果。start()方法start()方法用于启动一个新的线程。当你调用start()方法时,JVM会创建一个新的线程,并在这个新线程中调用run()方法</div> </li> <li><a href="/article/1903894573906718720.htm" title="多种方法判断一个数是否为素数的实现与优化" target="_blank">多种方法判断一个数是否为素数的实现与优化</a> <span class="text-muted">徐浪老师</span> <a class="tag" taget="_blank" href="/search/%E5%BE%90%E6%B5%AA%E8%80%81%E5%B8%88%E5%A4%A7%E8%AE%B2%E5%A0%82/1.htm">徐浪老师大讲堂</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/1.htm">数据结构</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a> <div>素数,又称质数,是一个在数学和计算机科学中非常重要的概念。它是大于1的自然数中,除了1和它本身,不能被其他数整除的数。本文将从最基础的方法讲解到优化算法,并提供完整的实现代码,帮助您高效地判断一个数是否为素数。一、素数的基础知识1.1素数的定义素数:一个大于1的正整数,只有两个正因子:1和它本身。例如:2、3、5、7、11等。非素数:大于1的数中,可以被除1和本身以外的数整除的数。例如:4、6、8</div> </li> <li><a href="/article/1903894447456841728.htm" title="手把手教你完成 MATLAB 的下载安装与激活(详细图文教程)" target="_blank">手把手教你完成 MATLAB 的下载安装与激活(详细图文教程)</a> <span class="text-muted">徐浪老师</span> <a class="tag" taget="_blank" href="/search/%E5%BE%90%E6%B5%AA%E8%80%81%E5%B8%88%E5%A4%A7%E8%AE%B2%E5%A0%82/1.htm">徐浪老师大讲堂</a><a class="tag" taget="_blank" href="/search/matlab/1.htm">matlab</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>引言MATLAB是当前最流行的科学计算软件之一,被广泛应用于工程、数学、金融等多个领域。对于新用户而言,下载安装MATLAB可能会遇到一些困惑。本文将以详细步骤、清晰截图的形式,为您介绍MATLAB的下载、安装及激活的完整过程。一、下载安装前的准备工作在开始下载安装之前,请确保以下事项已准备妥当:1.系统需求MATLAB对系统配置有一定要求,具体包括:操作系统:Windows10或更新版本,mac</div> </li> <li><a href="/article/1903894445955280896.htm" title="Graylog日志系统超详细部署和配置" target="_blank">Graylog日志系统超详细部署和配置</a> <span class="text-muted">kim_liao123</span> <a class="tag" taget="_blank" href="/search/%E9%83%A8%E7%BD%B2/1.htm">部署</a><a class="tag" taget="_blank" href="/search/elasticsearch/1.htm">elasticsearch</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a> <div>Graylog日志系统部署和配置1.软件介绍:Graylog是一个开源的日志聚合、分析、审计、展现和预警工具。功能上和ELK类似,但又比ELK要简单,依靠着更加简洁,高效,部署使用简单;官方文档:https://docs.graylog.org/en/3.3/pages/users_and_roles.html以下所有部署方式都来源与官方文档2.软件准备:服务端:Mongo:存储graylog的一</div> </li> <li><a href="/article/1903893816243449856.htm" title="docker(10、日志管理4)5、Graylog 日志系统(1、部署Graylog日志系统,2、Graylog管理日志)" target="_blank">docker(10、日志管理4)5、Graylog 日志系统(1、部署Graylog日志系统,2、Graylog管理日志)</a> <span class="text-muted">junior1206</span> <a class="tag" taget="_blank" href="/search/k8s/1.htm">k8s</a><a class="tag" taget="_blank" href="/search/docker/1.htm">docker</a> <div>部署Graylog日志系统Graylog是与ELK可以相提并论的一款几种式日志管理方案,支持数据收集、检索、可视化Dashboard。将实践用Graylog来管理Docker日志Graylog架构Graylog架构如下图所示:Graylog负责接收来自各种设备和应用的日志,并未用户提供Web访问接口。Elasticsearch用于索引和保存Graylog接收到的日志MongoDB负责保存Grayl</div> </li> <li><a href="/article/43.htm" title="集合框架" target="_blank">集合框架</a> <span class="text-muted">天子之骄</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/1.htm">数据结构</a><a class="tag" taget="_blank" href="/search/%E9%9B%86%E5%90%88%E6%A1%86%E6%9E%B6/1.htm">集合框架</a> <div>   集合框架 集合框架可以理解为一个容器,该容器主要指映射(map)、集合(set)、数组(array)和列表(list)等抽象数据结构。 从本质上来说,Java集合框架的主要组成是用来操作对象的接口。不同接口描述不同的数据类型。   简单介绍:   Collection接口是最基本的接口,它定义了List和Set,List又定义了LinkLi</div> </li> <li><a href="/article/170.htm" title="Table Driven(表驱动)方法实例" target="_blank">Table Driven(表驱动)方法实例</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/enum/1.htm">enum</a><a class="tag" taget="_blank" href="/search/Table+Driven/1.htm">Table Driven</a><a class="tag" taget="_blank" href="/search/%E8%A1%A8%E9%A9%B1%E5%8A%A8/1.htm">表驱动</a> <div>实例一: /** * 驾驶人年龄段 * 保险行业,会对驾驶人的年龄做年龄段的区分判断 * 驾驶人年龄段:01-[18,25);02-[25,30);03-[30-35);04-[35,40);05-[40,45);06-[45,50);07-[50-55);08-[55,+∞) */ public class AgePeriodTest { //if...el</div> </li> <li><a href="/article/297.htm" title="Jquery 总结" target="_blank">Jquery 总结</a> <span class="text-muted">cuishikuan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/jquery/1.htm">jquery</a><a class="tag" taget="_blank" href="/search/Ajax/1.htm">Ajax</a><a class="tag" taget="_blank" href="/search/Web/1.htm">Web</a><a class="tag" taget="_blank" href="/search/jquery%E6%96%B9%E6%B3%95/1.htm">jquery方法</a> <div>1.$.trim方法用于移除字符串头部和尾部多余的空格。如:$.trim('   Hello   ') // Hello2.$.contains方法返回一个布尔值,表示某个DOM元素(第二个参数)是否为另一个DOM元素(第一个参数)的下级元素。如:$.contains(document.documentElement, document.body); 3.$</div> </li> <li><a href="/article/424.htm" title="面向对象概念的提出" target="_blank">面向对象概念的提出</a> <span class="text-muted">麦田的设计者</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1/1.htm">面向对象</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E5%90%91%E8%BF%87%E7%A8%8B/1.htm">面向过程</a> <div>        面向对象中,一切都是由对象展开的,组织代码,封装数据。   在台湾面向对象被翻译为了面向物件编程,这充分说明了,这种编程强调实体。       下面就结合编程语言的发展史,聊一聊面向过程和面向对象。      c语言由贝尔实</div> </li> <li><a href="/article/551.htm" title="linux网口绑定" target="_blank">linux网口绑定</a> <span class="text-muted">被触发</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a> <div>刚在一台IBM Xserver服务器上装了RedHat Linux Enterprise AS 4,为了提高网络的可靠性配置双网卡绑定。 一、环境描述 我的RedHat Linux Enterprise AS 4安装双口的Intel千兆网卡,通过ifconfig -a命令看到eth0和eth1两张网卡。 二、双网卡绑定步骤: 2.1 修改/etc/sysconfig/network</div> </li> <li><a href="/article/678.htm" title="XML基础语法" target="_blank">XML基础语法</a> <span class="text-muted">肆无忌惮_</span> <a class="tag" taget="_blank" href="/search/xml/1.htm">xml</a> <div>一、什么是XML? XML全称是Extensible Markup Language,可扩展标记语言。很类似HTML。XML的目的是传输数据而非显示数据。XML的标签没有被预定义,你需要自行定义标签。XML被设计为具有自我描述性。是W3C的推荐标准。   二、为什么学习XML? 用来解决程序间数据传输的格式问题 做配置文件 充当小型数据库   三、XML与HTM</div> </li> <li><a href="/article/805.htm" title="为网页添加自己喜欢的字体" target="_blank">为网页添加自己喜欢的字体</a> <span class="text-muted">知了ing</span> <a class="tag" taget="_blank" href="/search/%E5%AD%97%E4%BD%93+%E7%A7%92%E8%A1%A8+css/1.htm">字体 秒表 css</a> <div>@font-face { font-family: miaobiao;//定义字体名字 font-style: normal; font-weight: 400; src: url('font/DS-DIGI-e.eot');//字体文件 } 使用: <label style="font-size:18px;font-famil</div> </li> <li><a href="/article/932.htm" title="redis范围查询应用-查找IP所在城市" target="_blank">redis范围查询应用-查找IP所在城市</a> <span class="text-muted">矮蛋蛋</span> <a class="tag" taget="_blank" href="/search/redis/1.htm">redis</a> <div>原文地址: http://www.tuicool.com/articles/BrURbqV 需求 根据IP找到对应的城市 原来的解决方案 oracle表(ip_country): 查询IP对应的城市: 1.把a.b.c.d这样格式的IP转为一个数字,例如为把210.21.224.34转为3524648994 2. select city from ip_</div> </li> <li><a href="/article/1059.htm" title="输入两个整数, 计算百分比" target="_blank">输入两个整数, 计算百分比</a> <span class="text-muted">alleni123</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div> public static String getPercent(int x, int total){ double result=(x*1.0)/(total*1.0); System.out.println(result); DecimalFormat df1=new DecimalFormat("0.0000%"); </div> </li> <li><a href="/article/1186.htm" title="百合——————>怎么学习计算机语言" target="_blank">百合——————>怎么学习计算机语言</a> <span class="text-muted">百合不是茶</span> <a class="tag" taget="_blank" href="/search/java+%E7%A7%BB%E5%8A%A8%E5%BC%80%E5%8F%91/1.htm">java 移动开发</a> <div>    对于一个从没有接触过计算机语言的人来说,一上来就学面向对象,就算是心里上面接受的了,灵魂我觉得也应该是跟不上的,学不好是很正常的现象,计算机语言老师讲的再多,你在课堂上面跟着老师听的再多,我觉得你应该还是学不会的,最主要的原因是你根本没有想过该怎么来学习计算机编程语言,记得大一的时候金山网络公司在湖大招聘我们学校一个才来大学几天的被金山网络录取,一个刚到大学的就能够去和</div> </li> <li><a href="/article/1313.htm" title="linux下tomcat开机自启动" target="_blank">linux下tomcat开机自启动</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/tomcat/1.htm">tomcat</a> <div>方法一: 修改Tomcat/bin/startup.sh 为: export JAVA_HOME=/home/java1.6.0_27 export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:. export PATH=$JAVA_HOME/bin:$PATH export CATALINA_H</div> </li> <li><a href="/article/1440.htm" title="spring aop实例" target="_blank">spring aop实例</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/AOP/1.htm">AOP</a> <div>1.AdviceMethods.java package com.bijian.study.spring.aop.schema; public class AdviceMethods { public void preGreeting() { System.out.println("--how are you!--"); } } 2.beans.x</div> </li> <li><a href="/article/1567.htm" title="[Gson八]GsonBuilder序列化和反序列化选项enableComplexMapKeySerialization" target="_blank">[Gson八]GsonBuilder序列化和反序列化选项enableComplexMapKeySerialization</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/serialization/1.htm">serialization</a> <div>enableComplexMapKeySerialization配置项的含义  Gson在序列化Map时,默认情况下,是调用Key的toString方法得到它的JSON字符串的Key,对于简单类型和字符串类型,这没有问题,但是对于复杂数据对象,如果对象没有覆写toString方法,那么默认的toString方法将得到这个对象的Hash地址。   GsonBuilder用于</div> </li> <li><a href="/article/1694.htm" title="【Spark九十一】Spark Streaming整合Kafka一些值得关注的问题" target="_blank">【Spark九十一】Spark Streaming整合Kafka一些值得关注的问题</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/Stream/1.htm">Stream</a> <div>包括Spark Streaming在内的实时计算数据可靠性指的是三种级别: 1. At most once,数据最多只能接受一次,有可能接收不到 2. At least once, 数据至少接受一次,有可能重复接收 3. Exactly once  数据保证被处理并且只被处理一次,   具体的多读几遍http://spark.apache.org/docs/lates</div> </li> <li><a href="/article/1821.htm" title="shell脚本批量检测端口是否被占用脚本" target="_blank">shell脚本批量检测端口是否被占用脚本</a> <span class="text-muted">ronin47</span> <div>#!/bin/bash cat ports |while read line do#nc -z -w 10 $line nc -z -w 2 $line 58422>/dev/null2>&1if[ $?-eq 0]then echo $line:ok else echo $line:fail fi done 这里的ports 既可以是文件</div> </li> <li><a href="/article/1948.htm" title="java-2.设计包含min函数的栈" target="_blank">java-2.设计包含min函数的栈</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>具体思路参见:http://zhedahht.blog.163.com/blog/static/25411174200712895228171/ import java.util.ArrayList; import java.util.List; public class MinStack { //maybe we can use origin array rathe</div> </li> <li><a href="/article/2075.htm" title="Netty源码学习-ChannelHandler" target="_blank">Netty源码学习-ChannelHandler</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/netty/1.htm">netty</a> <div> 一般来说,“有状态”的ChannelHandler不应该是“共享”的,“无状态”的ChannelHandler则可“共享” 例如ObjectEncoder是“共享”的, 但 ObjectDecoder 不是 因为每一次调用decode方法时,可能数据未接收完全(incomplete), 它与上一次decode时接收到的数据“累计”起来才有可能是完整的数据,是“有状态”的 p</div> </li> <li><a href="/article/2202.htm" title="java生成随机数" target="_blank">java生成随机数</a> <span class="text-muted">cngolon</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>方法一: /** * 生成随机数 * @author cngolon@126.com * @return */ public synchronized static String getChargeSequenceNum(String pre){ StringBuffer sequenceNum = new StringBuffer(); Date dateTime = new D</div> </li> <li><a href="/article/2329.htm" title="POI读写海量数据" target="_blank">POI读写海量数据</a> <span class="text-muted">ctrain</span> <a class="tag" taget="_blank" href="/search/%E6%B5%B7%E9%87%8F%E6%95%B0%E6%8D%AE/1.htm">海量数据</a> <div>import java.io.FileOutputStream; import java.io.OutputStream; import org.apache.poi.xssf.streaming.SXSSFRow; import org.apache.poi.xssf.streaming.SXSSFSheet; import org.apache.poi.xssf.streaming</div> </li> <li><a href="/article/2456.htm" title="mysql 日期格式化date_format详细使用" target="_blank">mysql 日期格式化date_format详细使用</a> <span class="text-muted">daizj</span> <a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/date_format/1.htm">date_format</a><a class="tag" taget="_blank" href="/search/%E6%97%A5%E6%9C%9F%E6%A0%BC%E5%BC%8F%E8%BD%AC%E6%8D%A2/1.htm">日期格式转换</a><a class="tag" taget="_blank" href="/search/%E6%97%A5%E6%9C%9F%E6%A0%BC%E5%BC%8F%E5%8C%96/1.htm">日期格式化</a> <div> 日期转换函数的详细使用说明  DATE_FORMAT(date,format) Formats the date value according to the format string. The following specifiers may be used in the format string. The&n</div> </li> <li><a href="/article/2583.htm" title="一个程序员分享8年的开发经验" target="_blank">一个程序员分享8年的开发经验</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98/1.htm">程序员</a> <div>  在中国有很多人都认为IT行为是吃青春饭的,如果过了30岁就很难有机会再发展下去!其实现实并不是这样子的,在下从事.NET及JAVA方面的开发的也有8年的时间了,在这里在下想凭借自己的亲身经历,与大家一起探讨一下。 明确入行的目的 很多人干IT这一行都冲着“收入高”这一点的,因为只要学会一点HTML, DIV+CSS,要做一个页面开发人员并不是一件难事,而且做一个页面开发人员更容</div> </li> <li><a href="/article/2710.htm" title="android欢迎界面淡入淡出效果" target="_blank">android欢迎界面淡入淡出效果</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/android/1.htm">android</a> <div>很多Android应用一开始都会有一个欢迎界面,淡入淡出效果也是用得非常多的,下面来实现一下。 主要代码如下: package com.myaibang.activity; import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.os.CountDown</div> </li> <li><a href="/article/2837.htm" title="linux 复习笔记之常见压缩命令" target="_blank">linux 复习笔记之常见压缩命令</a> <span class="text-muted">eksliang</span> <a class="tag" taget="_blank" href="/search/tar%E8%A7%A3%E5%8E%8B/1.htm">tar解压</a><a class="tag" taget="_blank" href="/search/linux%E7%B3%BB%E7%BB%9F%E5%B8%B8%E8%A7%81%E5%8E%8B%E7%BC%A9%E5%91%BD%E4%BB%A4/1.htm">linux系统常见压缩命令</a><a class="tag" taget="_blank" href="/search/linux%E5%8E%8B%E7%BC%A9%E5%91%BD%E4%BB%A4/1.htm">linux压缩命令</a><a class="tag" taget="_blank" href="/search/tar%E5%8E%8B%E7%BC%A9/1.htm">tar压缩</a> <div>转载请出自出处:http://eksliang.iteye.com/blog/2109693 linux中常见压缩文件的拓展名 *.gz gzip程序压缩的文件 *.bz2 bzip程序压缩的文件 *.tar tar程序打包的数据,没有经过压缩 *.tar.gz tar程序打包后,并经过gzip程序压缩 *.tar.bz2 tar程序打包后,并经过bzip程序压缩 *.zi</div> </li> <li><a href="/article/2964.htm" title="Android 应用程序发送shell命令" target="_blank">Android 应用程序发送shell命令</a> <span class="text-muted">gqdy365</span> <a class="tag" taget="_blank" href="/search/android/1.htm">android</a> <div>项目中需要直接在APP中通过发送shell指令来控制lcd灯,其实按理说应该是方案公司在调好lcd灯驱动之后直接通过service送接口上来给APP,APP调用就可以控制了,这是正规流程,但我们项目的方案商用的mtk方案,方案公司又没人会改,只调好了驱动,让应用程序自己实现灯的控制,这不蛋疼嘛!!!! 发就发吧! 一、关于shell指令: 我们知道,shell指令是Linux里面带的</div> </li> <li><a href="/article/3091.htm" title="java 无损读取文本文件" target="_blank">java 无损读取文本文件</a> <span class="text-muted">hw1287789687</span> <a class="tag" taget="_blank" href="/search/%E8%AF%BB%E5%8F%96%E6%96%87%E4%BB%B6/1.htm">读取文件</a><a class="tag" taget="_blank" href="/search/%E6%97%A0%E6%8D%9F%E8%AF%BB%E5%8F%96/1.htm">无损读取</a><a class="tag" taget="_blank" href="/search/%E8%AF%BB%E5%8F%96%E6%96%87%E6%9C%AC%E6%96%87%E4%BB%B6/1.htm">读取文本文件</a><a class="tag" taget="_blank" href="/search/charset/1.htm">charset</a> <div>java 如何无损读取文本文件呢? 以下是有损的 @Deprecated public static String getFullContent(File file, String charset) { BufferedReader reader = null; if (!file.exists()) { System.out.println("getFull</div> </li> <li><a href="/article/3218.htm" title="Firebase 相关文章索引" target="_blank">Firebase 相关文章索引</a> <span class="text-muted">justjavac</span> <a class="tag" taget="_blank" href="/search/firebase/1.htm">firebase</a> <div>Awesome Firebase 最近谷歌收购Firebase的新闻又将Firebase拉入了人们的视野,于是我做了这个 github 项目。 Firebase 是一个数据同步的云服务,不同于 Dropbox 的「文件」,Firebase 同步的是「数据」,服务对象是网站开发者,帮助他们开发具有「实时」(Real-Time)特性的应用。 开发者只需引用一个 API 库文件就可以使用标准 RE</div> </li> <li><a href="/article/3345.htm" title="C++学习重点" target="_blank">C++学习重点</a> <span class="text-muted">lx.asymmetric</span> <a class="tag" taget="_blank" href="/search/C%2B%2B/1.htm">C++</a><a class="tag" taget="_blank" href="/search/%E7%AC%94%E8%AE%B0/1.htm">笔记</a> <div>1.c++面向对象的三个特性:封装性,继承性以及多态性。   2.标识符的命名规则:由字母和下划线开头,同时由字母、数字或下划线组成;不能与系统关键字重名。   3.c++语言常量包括整型常量、浮点型常量、布尔常量、字符型常量和字符串性常量。   4.运算符按其功能开以分为六类:算术运算符、位运算符、关系运算符、逻辑运算符、赋值运算符和条件运算符。 &n</div> </li> <li><a href="/article/3472.htm" title="java bean和xml相互转换" target="_blank">java bean和xml相互转换</a> <span class="text-muted">q821424508</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/bean/1.htm">bean</a><a class="tag" taget="_blank" href="/search/xml/1.htm">xml</a><a class="tag" taget="_blank" href="/search/xml%E5%92%8Cbean%E8%BD%AC%E6%8D%A2/1.htm">xml和bean转换</a><a class="tag" taget="_blank" href="/search/java+bean%E5%92%8Cxml%E8%BD%AC%E6%8D%A2/1.htm">java bean和xml转换</a> <div>这几天在做微信公众号 做的过程中想找个java bean转xml的工具,找了几个用着不知道是配置不好还是怎么回事,都会有一些问题, 然后脑子一热谢了一个javabean和xml的转换的工具里,自己用着还行,虽然有一些约束吧 , 还是贴出来记录一下      顺便你提一下下,这个转换工具支持属性为集合、数组和非基本属性的对象。   packag</div> </li> <li><a href="/article/3599.htm" title="C 语言初级 位运算" target="_blank">C 语言初级 位运算</a> <span class="text-muted">1140566087</span> <a class="tag" taget="_blank" href="/search/%E4%BD%8D%E8%BF%90%E7%AE%97/1.htm">位运算</a><a class="tag" taget="_blank" href="/search/c/1.htm">c</a> <div> 第十章 位运算   1、位运算对象只能是整形或字符型数据,在VC6.0中int型数据占4个字节   2、位运算符: 运算符 作用 ~ 按位求反 << 左移 >> 右移 & 按位与 ^ 按位异或 | 按位或 他们的优先级从高到低;   3、位运算符的运算功能: a、按位取反: ~01001101 = 101</div> </li> <li><a href="/article/3726.htm" title="14点睛Spring4.1-脚本编程" target="_blank">14点睛Spring4.1-脚本编程</a> <span class="text-muted">wiselyman</span> <a class="tag" taget="_blank" href="/search/spring4/1.htm">spring4</a> <div>14.1 Scripting脚本编程 脚本语言和java这类静态的语言的主要区别是:脚本语言无需编译,源码直接可运行; 如果我们经常需要修改的某些代码,每一次我们至少要进行编译,打包,重新部署的操作,步骤相当麻烦; 如果我们的应用不允许重启,这在现实的情况中也是很常见的; 在spring中使用脚本编程给上述的应用场景提供了解决方案,即动态加载bean; spring支持脚本</div> </li> </ul> </div> </div> </div> <div> <div class="container"> <div class="indexes"> <strong>按字母分类:</strong> <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a> </div> </div> </div> <footer id="footer" class="mb30 mt30"> <div class="container"> <div class="footBglm"> <a target="_blank" href="/">首页</a> - <a target="_blank" href="/custom/about.htm">关于我们</a> - <a target="_blank" href="/search/Java/1.htm">站内搜索</a> - <a target="_blank" href="/sitemap.txt">Sitemap</a> - <a target="_blank" href="/custom/delete.htm">侵权投诉</a> </div> <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved. <!-- <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>--> </div> </div> </footer> <!-- 代码高亮 --> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script> <link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/> <script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script> </body> </html>