当前位置: 首页 > news >正文

Blazor前后端框架Known-V1.2.13

V1.2.13

Known是基于C#和Blazor开发的前后端分离快速开发框架,开箱即用,跨平台,一处代码,多处运行。

  • Gitee: https://gitee.com/known/Known
  • Github:https://github.com/known/Known

概述

  • 基于C#和Blazor实现的快速开发框架,前后端分离,开箱即用。
  • 跨平台,单页应用,混合桌面应用,Web和桌面共享一处代码。
  • 包含模块、字典、组织、角色、用户、日志、消息、工作流、定时任务等功能。
  • 代码简洁、易扩展,让开发更简单、更快捷!

如果对您有帮助,点击⭐Star⭐关注 ,感谢支持开源!

更新日期

  • 2023-08-17

更新内容

  • 🐛修复表单列表位置的问题
  • 🔨优化高级查询,根据字段类型区分下拉条件
  • 🔨优化文件导入组件及后端功能
  • 🐛修复空值验证正则表达式问题
  • 🔨优化导入架构,支持同步和异步两种模式
  • 😄新增数据字典导入功能
  • 😄DataGrid新增SetData方法
  • 😄Upload组件新增Button样式
  • 🔨KCConfig添加ProductId,仅初始化加载一次
  • 😄新增Loading组件
  • 🐛修复系统激活页面样式问题
  • 🔨KRConfig增加版权和许可配置
  • 😄新增Prompt弹窗组件
  • 🐛修复我的消息列表样式问题

详细内容

1. DataGrid功能

  • 导入支持同步和异步两种模式,默认为异步
  • 数据字典增加导入功能
  • 新增SetData方法
//同步导入
public void Import() => ShowImport(Name, typeof(TItem), false);//异步导入
public void Import() => ShowImport(Name, typeof(TItem));//SetData
grid?.SetData(new List<TItem>());

2. Upload组件

  • 新增Button样式导入字段
protected override void BuildRenderTree(RenderTreeBuilder builder)
{builder.Field<Upload>("附件:", "Upload").Set(f => f.IsButton, true).Set(f => f.ButtonText, "导入附件").Build();
}

在这里插入图片描述

3. KCConfig配置

  • 增加ProductId配置
  • 仅初始化加载一次,关于系统页面不重复加载
  • 变更自定义方式
//在项目初始化方法中加入如下代码
internal static void Initialize()
{...//该行需在KCConfig.AddWebPlatform之后添加才能覆盖ProductIdKCConfig.ProductId = GetProductId();
}private static string GetProductId()
{var id = "这里定义您的ID";return $"PM-{Config.AppId}-{id:000000}";
}

4. Loading组件

  • 用于耗时操作提示
protected override void BuildRenderTree(RenderTreeBuilder builder)
{builder.Button("提交", Callback(OnLoading), StyleType.Primary);
}private void OnLoading()
{UI.ShowLoading("数据提交中..."); //显示LoadingTask.Run(() =>{Thread.Sleep(2000);UI.CloseLoading(); //关闭Loading});
}

在这里插入图片描述

5. KRConfig配置

  • 增加IsEditCopyright,是否允许编辑版权和许可,默认true
  • 增加Copyright,自定义关于系统页面的版权信息
  • 增加SoftTerms,自定义关于系统页面的许可信息
//在前端初始化方法中加入如下代码
internal static void Initialize()
{KRConfig.IsEditCopyright = false; //不允许修改版权和许可KRConfig.Copyright = "定义你的版权信息";KRConfig.SoftTerms = "定义你的许可信息";
}

6. Prompt组件

  • 用于弹窗敏捷表单
protected override void BuildRenderTree(RenderTreeBuilder builder)
{builder.Button("处理", Callback(OnPrompt), StyleType.Primary);
}private void OnPrompt()
{UI.Prompt("异常处理", new(300, 200), builder =>{builder.Field<TextArea>("原因", "Reason", true).Build();},data =>{//提交数据UI.CloseDialog();});
}

在这里插入图片描述

相关文章:

Blazor前后端框架Known-V1.2.13

V1.2.13 Known是基于C#和Blazor开发的前后端分离快速开发框架&#xff0c;开箱即用&#xff0c;跨平台&#xff0c;一处代码&#xff0c;多处运行。 Gitee&#xff1a; https://gitee.com/known/KnownGithub&#xff1a;https://github.com/known/Known 概述 基于C#和Blazo…...

vue 复制文本

一个常用的库就是 clipboard.js&#xff0c;它可以帮助您实现跨浏览器的复制到剪贴板功能 首先&#xff0c;安装 clipboard.js&#xff1a; cnpm install clipboard 创建一个 Vue 组件并使用 clipboard.js&#xff1a; <template><div><input v-model"…...

西瓜书第三章

广义线性模型 考虑单点可微函数 g ( ⋅ ) g(\cdot) g(⋅)&#xff0c;令 y g − 1 ( ω T x b ) yg^{-1}(\omega^{T}xb) yg−1(ωTxb)&#xff0c;这样得到的模型称为“广义线性模型”&#xff0c;其中函数 g ( ⋅ ) g(\cdot) g(⋅)称为“联系函数”。显然&#xff0c;对数线…...

关于python如何使用sqlalchemy连接sap_hana数据库

1.先安装sqlalchemy pip install sqlalchemy 2.from sqlalchemy import create_engine 3.创建数据库连接方式&#xff1a; 假设数据连接方式如下&#xff1a; usernameH_TEOPT passwordww122222 jdbcUrljdbc:sap://192.163.1.161:21681/?currentschema 那么使用sqlalchemy 的…...

微信小程序教学系列(5)

微信小程序教学系列 第五章&#xff1a;小程序发布与推广 第一节&#xff1a;小程序发布流程介绍 小伙伴们&#xff0c;欢迎来到第五章的教学啦&#xff01;在这一章中&#xff0c;我们将一起来探索小程序的发布与推广流程。你准备好了吗&#xff1f;让我们开始吧&#xff0…...

【计算机网络篇】TCP协议

✅作者简介&#xff1a;大家好&#xff0c;我是小杨 &#x1f4c3;个人主页&#xff1a;「小杨」的csdn博客 &#x1f433;希望大家多多支持&#x1f970;一起进步呀&#xff01; TCP协议 1&#xff0c;TCP 简介 TCP&#xff08;Transmission Control Protocol&#xff09;是…...

Disruptor并发编程框架

Disruptor是一款高性能的并发编程框架,主要具有以下特点和功能: 1. RingBuffer环形数据结构 Disruptor的核心数据结构是RingBuffer环形队列,用于存储客户端的并发数据并在生产者和消费者之间传递。队列以批量方式的顺序存储,可以高效地进行并发读写操作。 2. 无锁设计 Disrup…...

matlab 点云精配准(1)——point to point ICP(点到点的ICP)

目录 一、算法原理参考文献二、代码实现三、结果展示四、参考链接本文由CSDN点云侠原创,爬虫自重。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫。 一、算法原理 参考文献 [1] BESL P J,MCKAY N D.A method for registration of 3-Dshapes[J].IEEE Tran…...

【JVM】运行时数据区域

文章目录 说明程序计数器虚拟机栈本地方法栈Java堆方法区运行时常量池直接内存 说明 Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域有各自的用途&#xff0c;以及创建和销毁的时间&#xff0c;有的区域随着虚拟机进程的启动而一直…...

uniapp踩坑合集

1、onPullDownRefresh下拉刷新不生效 pages.json对应的style中enablePullDownRefresh设置为true&#xff0c;开启下拉刷新 {"path" : "pages/list/list","style" :{"navigationBarTitleText": "页面标题名称","enable…...

再JAVA中如何使用qsort对类进行排序?

目录 结论&#xff1a; 解析&#xff1a; 结论&#xff1a; import java.util.Arrays;class Person implements Comparable<Person>{public String name;public int age;public Person(String name, int age) {this.name name;this.age age;}Overridepublic Stri…...

docker安装clickhouse

安装 docker安装 创建clickhouse目录 mkdir -P /data/clickhouse/datamkdir -P /data/clickhouse/confmkdir -P /data/clickhouse/log 拉取镜像 这里直接拉取最新镜像, 如果需要某个特定版本, 则再拉取的时候指定版本号即可. docker pull clickhouse/clickhouse-server 启动临…...

解决`idea`中`database`工具查询起别名乱码问题

文章目录 解决idea中database工具查询起别名乱码问题场景复现如何解决方式一 设置编码方式二&#xff1a;修改字体 原因说明 解决idea中database工具查询起别名乱码问题 场景复现 使用Idea做查询的并且起别名出现了中文乱码 如何解决 方式一 设置编码 settings->输入框输…...

UE4/5Niagara粒子特效之Niagara_Particles官方案例:1.5->2.3

目录 之前的文章&#xff1a; 1.5 Blend Attributes by Value 发射器更新 粒子生成 粒子更新 2.1 Static Beams ​编辑 发射器更新&#xff1a; 粒子生成 粒子更新 2.2 Dynamic Beams 没有开始模拟前的效果是&#xff1a; 开始模拟后的效果是&#xff1a; 发射器更新 …...

Docker 容器数据卷

Docker挂载主机目录访问如果出现cannot open directory .: Permission denied 解决办法&#xff1a;在挂载目录后多加一个--privilegedtrue参数即可 如果是CentOS7安全模块会比之前系统版本加强&#xff0c;不安全的会先禁止&#xff0c;所以目录挂载的情况被默认为不安全的行…...

STM32--MPU6050与I2C外设

文章目录 前言MPU6050参数电路MPU6050框图 IIC外设框图 IIC的基本结构软件IIC实现MPU6050硬件IIC实现MPU6050 前言 在51单片机专栏中&#xff0c;用过I2C通信来进行实现AT24C02的数据存储&#xff1b; 里面介绍的是利用程序的编程来实现I2C的时序&#xff0c;进而实现AT24C02与…...

项目管理实战笔记1:项目管理常识

序 看了下极客时间的《项目管理实战》&#xff0c;觉得跟之前学习PMP的标准资料还是有所侧重。重新整理下&#xff0c;相比书上繁杂的知识&#xff0c;这个更通俗易懂。 1 角色转换&#xff1a;三大误区 误区1&#xff1a;事必躬亲 自己做事情是可控的&#xff0c;做项目依赖…...

时序分解 | MATLAB实现基于SVMD逐次变分模态分解的信号分解分量可视化

时序分解 | MATLAB实现基于SVMD逐次变分模态分解的信号分解分量可视化 目录 时序分解 | MATLAB实现基于SVMD逐次变分模态分解的信号分解分量可视化效果一览基本介绍程序设计参考资料 效果一览 基本介绍 SVMD分解算法&#xff0c;分解结果可视化&#xff0c;MATLAB程序&#xff…...

阿里云访问端口被限制解决方法记录

阿里云服务器&#xff0c;80端口可以访问&#xff0c;但是加入了安全组端口8080 通过公网访问改端口策略&#xff0c;发现不能被访问 问题出在防火墙&#xff0c;需要重置一下 解决方法&#xff1a; 在运行的服务器上执行如下命令&#xff1a; # iptables -A INPUT -j ACCEP…...

antd5源码调试环境启动(MacOS)

将源码下载至本地 这里antd5 版本是5.8.3 $ git clone gitgithub.com:ant-design/ant-design.git $ cd ant-design $ npm install $ npm start前提&#xff1a;安装python3、node版本18.14.0(这是本人当前下载的版本&#xff09; python3安装教程可参考&#xff1a;https://…...

多重细胞因子检测及其技术综述

一、细胞因子概述细胞因子是一类由免疫细胞&#xff08;如单核细胞、巨噬细胞、T细胞、B细胞及自然杀伤细胞等&#xff09;及部分非免疫细胞&#xff08;如内皮细胞、表皮细胞、成纤维细胞等&#xff09;在相应刺激诱导下合成并分泌的小分子蛋白质&#xff0c;具有广泛的生物学…...

在Android Termux中部署轻量级Docker环境:原理、部署与实战指南

1. 项目概述与核心价值最近在折腾移动设备上的开发环境&#xff0c;发现一个挺有意思的项目&#xff1a;George-Seven/Termux-Udocker。简单来说&#xff0c;它是在Android平台的Termux终端模拟器里&#xff0c;实现一个轻量级的、用户空间&#xff08;User-Space&#xff09;的…...

模型运行记录

1753...

FreeVA:零训练成本,用图像大模型实现视频理解的新范式

1. 项目概述&#xff1a;一个无需训练的“零成本”视频助手 最近在折腾多模态大模型&#xff08;MLLM&#xff09;的时候&#xff0c;我发现了一个挺有意思的现象&#xff1a;大家一提到让模型理解视频&#xff0c;第一反应就是得搞“视频指令微调”。简单说&#xff0c;就是拿…...

用PLC控制Labview自动运行

博图软件设置注意数据位正确下图为Labview读取CSV文件的位置测试数据如下图所示实现方法&#xff1a;在1分支内创建好条件&#xff0c;当PLC心跳为True那么就去跑True里面的流程&#xff08;CSM框架&#xff09;...

半导体供应链风险管理:从噪音中识别信号,构建韧性决策框架

1. 从一则旧闻看半导体产业的“噪音”与“信号”2013年春天&#xff0c;一则关于朝鲜可能威胁韩国三星和SK海力士内存芯片工厂的消息&#xff0c;在投资圈和部分科技媒体中泛起了一阵涟漪。一位来自俄亥俄州的投资者言之凿凿&#xff0c;指出全球65%的DRAM和55%的闪存产能集中在…...

Nihonga风格AI生成稀缺资源包泄露:含17世纪狩野派笔触扫描集、200+古籍《本朝画史》描述性Prompt语料库、及唯一通过日本文化厅AI伦理审查的商用授权协议范本

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Nihonga风格AI生成资源包的伦理边界与文化权重 文化符号的不可压缩性 Nihonga&#xff08;日本画&#xff09;并非仅由矿物颜料、金箔或桑皮纸构成的技术集合&#xff0c;其内嵌着神道自然观、物哀美学…...

Python 爬虫数据处理:特殊格式文档爬虫解析处理

前言 在 Python 爬虫规模化采集业务中&#xff0c;除常规 HTML 网页与 JSON 接口数据外&#xff0c;经常会遇到各类非网页型特殊格式文档资源&#xff0c;常见包含 PDF、Word、Excel、CSV、TXT、压缩包内嵌文档、Base64 加密文档、富文本混合格式文档等。这类文档无法通过常规…...

告别启动盘识别难题:手把手教你搞定CentOS 7在SR650上的UEFI启动与自定义分区(含/dev/sdX查找技巧)

告别启动盘识别难题&#xff1a;手把手教你搞定CentOS 7在SR650上的UEFI启动与自定义分区&#xff08;含/dev/sdX查找技巧&#xff09; 在服务器运维领域&#xff0c;系统安装看似基础却暗藏玄机。特别是当面对企业级硬件如Lenovo SR650时&#xff0c;UEFI启动模式与传统BIOS的…...

嵌入式开发实战:从ADC纹波故障看系统集成调试与EMC设计

1. 项目背景与问题缘起&#xff1a;当“新”设备遭遇“老”问题在工业设备开发领域&#xff0c;尤其是像线锯这类集精密机械、复杂电气和嵌入式软件于一体的复杂系统&#xff0c;有一个经典且令人头疼的场景&#xff1a;一款经过验证的成熟产品平台&#xff0c;在衍生出新机型或…...