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

基于.net6的一款开源的低代码、权限、工作流、动态接口平台-动态数据源篇

动态数据源

动态数据源功能允许用户在运行时动态添加、修改和删除数据库连接信息,从而实现对多个数据库的访问和操作。通过动态数据源,用户可以根据业务需求灵活地管理和切换数据库连接,提高系统的扩展性和灵活性。

动态数据源配置

打开动态数据源菜单

e7ddac7c-95aa-4950-94ec-fda32e3cb57b

点击新增按钮,填写动态数据源信息

微信图片_2025-11-23_224918_532

填写完毕,点击测试连接按钮,测试连接是否成功

点击确定按钮,保存动态数据源信息,列表可以看到新增的数据源记录。

修改动态数据源

打开动态数据源菜单

点击需要修改的动态数据源,进入修改页面

修改动态数据源信息

点击测试连接按钮,测试连接是否成功

点击确定按钮,保存动态数据源信息

删除动态数据源

打开动态数据源菜单

点击需要删除的动态数据源,进入删除页面

点击删除按钮,删除动态数据源

使用动态数据源

代码里面使用动态数据源

var db=provider.GetConnection("Test").Result;

var data=db.Ado.SqlQuery<dynamic>("select * from mlt_sys_dynamic_datasource");

var data=db.Ado.SqlQuery<dynamic>("select * from mlt_sys_dynamic_datasource");

注入动态数据源提供程序

复制代码

public class DynamicDataSourceController : ControllerBase

{

private readonly IDynamicDataSourceService _dynamicDataSourceService;

private readonly IDbProvider _dbProvider;

public DynamicDataSourceController(IDynamicDataSourceService dynamicDataSourceService, IDbProvider dbProvider)

{

_dynamicDataSourceService = dynamicDataSourceService;

_dbProvider = dbProvider;

}

public void Test(){

var db=provider.GetConnection("Test").Result;

var data=db.Ado.SqlQuery<dynamic>("select * from mlt_sys_dynamic_datasource");

// 数据库操作

}

}

复制代码

在低代码平台使用动态数据源 如图所示,在低代码平台使用动态数据源

微信图片_2025-11-23_225943_544

复制代码

using System;

using System.Threading.Tasks;

using Newtonsoft.Json;

using System;

using JESAI.Core.Aspects;

using JESAI.Platform.Domain.Admin.Repositories;

using Jesai.DynamicDataSource.Sqlsugar.DynamicDatasources;

public class Program

{

public string Handle(string param){

//查询数据库

var provider = ServiceLocator.Instance.GetService<IDbProvider>();

var db=provider.GetConnection("Test").Result;

var data=db.Ado.SqlQuery<dynamic>("select * from mlt_sys_dynamic_datasource");

// 创建包含多个匿名对象的数组

var tableData = new[]

{

new { Id = 1, TableName = "用户表", TableCode = "user", TableDesc = "用户信息表", IsValid = 1, CreateTime = "2023-10-01 12:00:00" },

new { Id = 2, TableName = "订单表", TableCode = "order", TableDesc = "订单信息表", IsValid = 1, CreateTime = "2023-10-02 12:00:00" },

new { Id = 3, TableName = "产品表", TableCode = "product", TableDesc = "产品信息表", IsValid = 0, CreateTime = "2023-10-03 12:00:00" }

};

var result=new {ErrorCode="000000",Message="操作成功!",CurrentPage=1,Total=3,Data=new {tableData=tableData,DBData=data}};

var str=JsonConvert.SerializeObject(result);

return str;

}

public static async Task Main()

{

var p= new Program();

var result=p.Handle(null);

Console.WriteLine(result);

}

}

复制代码

注意事项

- 动态数据源数据库链接目前是明文,可以自行修改为加密字符串,否组可能出现裸奔。

http://www.cnnetsun.cn/news/112412.html

相关文章:

  • JD-GUI 完全指南:Java 反编译工具的终极使用手册
  • 当模型预测控制遇上方向盘烫手时刻
  • ASMR音频下载完整指南:跨平台工具使用详解
  • 超越异步:如何在Node.js中构建极速数据库应用?
  • Boltz生物分子交互建模:从新手到专家的5个关键步骤
  • HoYo.Gacha专业抽卡分析工具完全使用手册
  • FastMCP高级特性之Composition
  • 安卓手机投屏到电脑的开源软件(scrcpy)
  • 边缘计算开源项目终极指南:让物联网设备秒变智能终端
  • ForensicsTool取证工具完整安装配置指南:快速掌握电子数据取证技能
  • DeepSeek-V3 KV缓存技术:让AI对话像翻书一样流畅
  • SpringBoot进阶教程(八十八)获取图片的宽高
  • PeachPie 1.1.13 发布支持最新PHP 8.5.0
  • 电视也可以玩街机经典游戏,你的客厅,早就该变成这样了!
  • 掌握3个Mock工具,轻松玩转单元测试
  • AutoGen到Microsoft Agent Framework终极迁移指南:从零开始构建现代化AI代理系统
  • 2008-2024年地级市女性奥运冠军数据
  • 2003-2024年上市公司人工智能采纳程度数据+Stata代码
  • 问了 3 个博士,导师不说,但目前最新论文卡人的已经不是知网查重
  • CST设计:可重构超表面宽带窄带可切换吸收与多波束技术
  • ai智能搜索文献:高效精准的学术资源检索新工具与应用研究
  • 英文文献的高效检索与阅读策略研究
  • 万字长文!Agent及其主流框架终极指南(附对比图),好Agent的标准:自己想、自己干、自己复盘!
  • 打造专属问答社区,开源系统助力内容创业新风口
  • Apache Impala为啥TBDS、华为MRS弃用?为什么不能做到无缝切换平缓迁移
  • 从开发到上线:智能Agent的Docker部署全链路实践(含YAML模板)
  • 智能连接与自动化引擎的全能表单系统,重新定义数据收集与业务流程的协同
  • 如何彻底解决企业级数据流程编排难题:Apache DolphinScheduler完整指南
  • 深度学习框架生态竞争格局:从Stable Diffusion WebUI Forge看技术选型逻辑
  • better-sqlite3深度解析:Node.js数据库操作的性能革命