惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

罗磊的独立博客
Cisco Talos Blog
Cisco Talos Blog
C
Check Point Blog
博客园_首页
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Martin Fowler
Martin Fowler
Recorded Future
Recorded Future
S
Security @ Cisco Blogs
L
LINUX DO - 最新话题
博客园 - 司徒正美
P
Privacy International News Feed
G
Google Developers Blog
I
Intezer
Hacker News - Newest:
Hacker News - Newest: "LLM"
博客园 - 聂微东
The GitHub Blog
The GitHub Blog
C
Cybersecurity and Infrastructure Security Agency CISA
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Scott Helme
Scott Helme
K
Kaspersky official blog
I
InfoQ
Y
Y Combinator Blog
T
The Blog of Author Tim Ferriss
Webroot Blog
Webroot Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
大猫的无限游戏
大猫的无限游戏
D
Docker
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
W
WeLiveSecurity
Microsoft Azure Blog
Microsoft Azure Blog
Spread Privacy
Spread Privacy
量子位
H
Hacker News: Front Page
Simon Willison's Weblog
Simon Willison's Weblog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
SecWiki News
SecWiki News
S
Security Affairs
Latest news
Latest news
人人都是产品经理
人人都是产品经理
C
CERT Recently Published Vulnerability Notes
S
Security Archives - TechRepublic
V
Visual Studio Blog
T
Troy Hunt's Blog
S
Secure Thoughts
F
Fortinet All Blogs
V
V2EX
The Register - Security
The Register - Security
J
Java Code Geeks
MongoDB | Blog
MongoDB | Blog
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO

博客园 - known

基于Blazor实现的跟踪光伏智能运维平台 基于Blazor实现的电梯运行监测系统 基于Blazor实现的样品扫码比对管理系统 基于Blazor实现的简易进销存管理系统 InfluxDB2时序数据库查询教程 InfluxDB2时序数据库安装教程 基于Blazor实现的运输信息管理系统 React+Next.js+MaterialUI+Toolpad技术栈学习——安装 Blazor开发框架KnownPro-创建新项目 Blazor开发框架Known-V2.0.11 Blazor静态服务端呈现(静态SSR)身份认证 Blazor开发框架Known-V2.0.10 Blazor开发框架Known-V2.0.9 Blazor开发框架Known-V2.0.8 Blazor开发框架Known-V2.0.7 Blazor Web 应用如何实现Auto模式 Blazor程序混合Razor页面 Win11系统Docker部署Blazor程序 - known Known框架实战演练——进销存财务管理 - known Known框架实战演练——进销存业务单据 - known Known框架实战演练——进销存基础数据 - known
Blazor开发框架Known-V2.0.13
known · 2024-10-02 · via 博客园 - known

大家好,国庆节快乐,Known又更新了一波功能。

继上个版本以来,一直在完善网站文档、KnownCMS开源项目和解决框架客户提出的一些问题。这期间客户反馈的问题主要如下:

  • 微信模板消息收不到,查其原因是网络问题,因此本版本改成后台任务发送消息
  • 无代码页面模板需要自定义
  • 无代码表单字段组件需要自定义
  • 数据库访问需要支持EFCore
  • 有些网友测试非常细致,发现了一些BUG

更新内容

  • 🔨支持手动刷新微信访问Token
  • 🔨优化启动程序错误日志
  • 😄Known.SqlSugar从项目独立出来一个新库
  • 🐛修复嵌入iFrame页面打不开问题
  • 🐛修复系统许可密钥验证面板问题
  • 🐛修复高级搜索字段显示问题
  • 🐛修复数据字典无类别新增问题
  • 🐛修复无代码模块日期查询条件控件问题
  • 🐛修复异步导入文字不显示问题
  • 😄微信模板消息发送增加后台任务记录
  • 😄自动表格页面增加自定义配置选项
  • 😄表格行支持双击事件
  • 🔨优化表格查看和编辑多次弹窗问题
  • 😄表单字段类型支持扩展的自定义组件
  • 🔨优化Database组件,支持EFCore
  • 🔨优化导入组件提示信息刷新问题
  • 🔨IDataRepository改成依赖注入

详细内容

  1. 增加了独立项目存储第三方数据库访问组件,项目地址如下

https://gitee.com/known/known-db

  1. 自定义页面配置
  • 在前端项目AppClient.cs中配置如下
public static class AppClient
{
    public static void AddSampleRazor(this IServiceCollection services)
    {
        // 配置建造自动表格页面方法委托
        UIConfig.AutoTablePage = (b, m) => b.Component<CustomTablePage>().Set(c => c.Model, m).Build();
    }
}
  • 添加自定义自动表格页面组件CustomTablePage.razor页面
@inherits BaseComponent

<div>@Model?.PageName</div>

@code {
    // 自动表格页面配置模型
    [Parameter] public TableModel<Dictionary<string, object>> Model { get; set; }
}
  1. 自定义表单字段组件
  • 当框架内置的表单字段组件InputSelect等不满足业务需求时,框架可以支持在项目中自定义
  • 在【模块管理-表单配置】中,字段类型选择Custom时,可以选择项目中自定义的字段组件
  • 如何在这里能选择自己扩展的自定义字段组件,只要组件继承ICustomField接口即可,示例如下
// CustomField是框架默认抽象自定义组件基类,可以换成项目中任何组件
// ICustomField必须要继承,否则在线表单中不会显示
class MyField : CustomField, ICustomField
{
    protected override void BuildRender(RenderTreeBuilder builder)
    {
        // 在这里构建你的自定义组件内容,例如一个按钮
        builder.Button("自定义", this.Callback<MouseEventArgs>(OnClick));
    }

    private void OnClick(MouseEventArgs args) { }
}
  • 效果如下
    image
  1. EFCore配置如下
  • XXX.Web项目中引用
<Project Sdk="Microsoft.NET.Sdk.Web">
    <ItemGroup>
        <PackageReference Include="Known.EntityFramework" Version="1.0.0" />
        <!--还需要添加EFCore的数据库依赖,此处以SqlServer为例-->
        <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.8" />
    </ItemGroup>
</Project>
  • Program.cs文件中添加如下代码
builder.Services.AddKnownEntityFramework(option =>
{
    // 配置数据库
    option.OnConfig = c => c.UseSqlServer(builder.Configuration.GetSection("ConnString").Get<string>());
    // 在此配置业务库数据模型
    //option.OnModel = m => m.Entity<SysLog>();
});