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

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

动态数据源

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

动态数据源配置

  1. 打开动态数据源菜单

e7ddac7c-95aa-4950-94ec-fda32e3cb57b

 

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

微信图片_2025-11-23_224918_532

 

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

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

修改动态数据源

  1. 打开动态数据源菜单
  2. 点击需要修改的动态数据源,进入修改页面
  3. 修改动态数据源信息
  4. 点击测试连接按钮,测试连接是否成功
  5. 点击确定按钮,保存动态数据源信息

删除动态数据源

  1. 打开动态数据源菜单
  2. 点击需要删除的动态数据源,进入删除页面
  3. 点击删除按钮,删除动态数据源

使用动态数据源

  1. 代码里面使用动态数据源
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;
</span><span style="color: #0000ff;">public</span><span style="color: #000000;"> DynamicDataSourceController(IDynamicDataSourceService dynamicDataSourceService, IDbProvider dbProvider)
{_dynamicDataSourceService </span>=<span style="color: #000000;"> dynamicDataSourceService;_dbProvider </span>=<span style="color: #000000;"> dbProvider;
}</span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">void</span><span style="color: #000000;"> Test(){</span><span style="color: #0000ff;">var</span> db=provider.GetConnection(<span style="color: #800000;">"</span><span style="color: #800000;">Test</span><span style="color: #800000;">"</span><span style="color: #000000;">).Result;</span><span style="color: #0000ff;">var</span> data=db.Ado.SqlQuery&lt;<span style="color: #0000ff;">dynamic</span>&gt;(<span style="color: #800000;">"</span><span style="color: #800000;">select * from mlt_sys_dynamic_datasource</span><span style="color: #800000;">"</span><span style="color: #000000;">);</span><span style="color: #008000;">//</span><span style="color: #008000;"> 数据库操作</span>
} }

 

  1. 在低代码平台使用动态数据源 如图所示,在低代码平台使用动态数据源 
微信图片_2025-11-23_225943_544

 

```csharp
 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);
        }
    }
```
## 注意事项
- 动态数据源数据库链接目前是明文,可以自行修改为加密字符串,否组可能出现裸奔。
- <span style="color:red;font-weight:bold;">动态接口脚本管理这块,目前还没做权限管理,相当于裸奔,后续会加上:目前建议自己加上权限认证,或者最安全的办法是不要对公暴露。</span>

开源地址:https://gitee.com/Jesai/platform.git

开源不易,看到麻烦顺手点个星星!

http://www.jsqmd.com/news/52312/

相关文章:

  • day03窗口操作函数的使用
  • 2025年铝木复合门窗制造厂家推荐
  • 2025年人造茅草平台口碑排行榜
  • deerflow-continue_to_running_research_team分析
  • 2025年11月农产品配送服务权威推荐榜:覆盖学校、医院、企业、餐厅、酒店及产业园的绿色高效供应链解决方案
  • 2025年信号转换器厂商口碑排行榜
  • 小明网站双登录系统实现——微信授权登录+用户名密码登录完整指南
  • react-router 的原理
  • 2025年气流流行检测仪厂家权威推荐榜单:气流流型检测仪‌/水雾发生器‌/醇类气流流型检测仪源头厂家精选
  • 2025年下半年北京健康服务、康养旅游、全家福计划、朋友圈计划服务商综合推荐指南:专业选择与权威分析
  • 2025年售后完善的大胖瓶前置过滤器排名前十
  • 2025 年 11 月铣床厂家权威推荐榜:立式铣床/摇臂铣床/炮塔铣床/数控铣床/精密铣床/多功能铣床,高精度加工与稳定性能深度解析
  • 2025 年 11 月幕墙精致钢实力厂家权威推荐榜:异形/镀锌/Q345/隐框幕墙精致钢,钢板拼接/直出/富锌底漆/T型幕墙/氟碳喷涂精致钢,专业工艺与耐久品质深度解析
  • 2025 年声测管厂家最新推荐榜,技术实力与市场口碑深度解析,密封抗扭与供货能力兼具的优质品牌检测声测管/桥梁桩基声测管/螺旋声测管/钳压式声测管公司推荐
  • 2025年靠谱的鸿运火锅底料礼盒装口碑排行榜单
  • Apipost和Apifox的收费标准
  • 2025年工业速冻冷库生产厂家推荐排行
  • Apipost 对比 Apifox
  • 2025 年 11 月轮转印刷机厂家权威推荐榜:间歇式/凸版间歇式/胶印间歇式/PS版间歇式轮转印刷机,不干胶轮转机/商标不干胶轮转机高效印刷解决方案
  • 202评价高的5年权威的北京个体户核定征收服务怎么选
  • 2025年玉米棒速冻隧道公司口碑推荐榜单
  • Apipost和Apifox哪个更适合团队使用?
  • 2025年全自动卫生纸加工设备排名
  • 2025年十大值得推荐的固化剂源头厂家,专业测评精选固化剂实
  • 2025年后勤保障消防车供应商口碑推荐榜
  • 2025 年 11 月传感器厂家权威推荐榜:覆盖压力传感器、温度传感器、光电传感器的智能感知与精准测量专家精选
  • 2025年地下室垃圾车源头厂家排行
  • 国际商标去哪里购买?2025 最新测评出炉,这 3 家零风险闭眼选
  • 2025 年 11 月预埋件厂家权威推荐榜:幕墙/热镀锌/后置/槽式/冲压/焊接/套芯/钢结构/混凝土预埋件,专业工艺与稳固性能深度解析
  • 国际商标购买方案指南:2025 优选 TOP5 平台测评 + 避坑攻略 + 流程拆解