怎么用WTM的DC来操作自己写的服务

发布于 2020-03-04 17:55:40

自己写的服务,继承IHostedService的,服务里面想操作数据库,现在用的是
using (DataContext udc = new DataContext("Data Source=mydb.db;", DBTypeEnum.SQLite)){

业务逻辑,数据库操作

},
感觉上面写的有点low。
WTM框架有没有提供一个公开的DC,单纯的数据库操作,不是走继承VM才能数据库操作的。最好是能依赖注入的那种

查看更多

关注者
0
被浏览
434
2 个回答
刘亮
刘亮 2020-03-04
专业编码30年

DataContext udc = new DataContext("连接字符串的key值,比如default之类的")

这样写就行,但是依赖注入不行,因为框架支持同时使用多种数据库

trfftrff
trfftrff 2020-03-04

`public static IDataContext CreateDC(string csName = "default")

    {
        var dataContext = ((GlobalData)GlobalServices.GetRequiredService(typeof(GlobalData))).DataContextCI;
        var configInfo = GlobalServices.GetRequiredService<Configs>();
        return (IDataContext)dataContext?.Invoke(new object[] { configInfo.ConnectionStrings.Where(x => x.Key.Equals(csName, StringComparison.OrdinalIgnoreCase)).Select(x => x.Value).FirstOrDefault(), configInfo.DbType });
    }`
    我是这样写的,应该是可以优化。

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览