C#通用公共类库ZXNetStandardDepot.Common

 

总结了一下写项目中遇到的各种方法,总结前辈们的经验,生成了该类库,引用net standard类库,支持net core/net framework.

使用方法

1、nuget 搜索 ZXNetStandardDepot.Common

2、方法说明

2.1 封装了读取net core appsettings文件信息的方法

        net core api/mvc 项目需要在Startup中依赖注入

       

        该行代码会读取appsettings.json文件下的key Appsettings

        

        之后,在controller或者bll 等业务层直接读取需要的配置即可,读取方法:

        var a = AppSettings.AppSetting("HomeUrl");

        如果需要读取多级嵌套的json,则使用冒号分隔多级

       var a = AppSettings.AppSetting("ConnectionStrings:MasterDb");

        如果是net core 控制台引用,因为控制台没有自动实现依赖注入,需要手动实现

       实现方式如下,需要手动引入如下包:

       

  

Microsoft.Extensions.Configuration 、
Microsoft.Extensions.Configuration.FileExtensions 、
Microsoft.Extensions.Configuration.Json、

Microsoft.Extensions.DependencyInjection、
Microsoft.Extensions.Options、
Microsoft.Extensions.Options.ConfigurationExtensions、

 

 

 

       

var conf = new ConfigurationBuilder()
            .SetBasePath(Directory.GetCurrentDirectory())
            .AddJsonFile("appsettings.json", false, true)
            .AddJsonFile("appsettings.Development.json", true, true)
            .Build();
            //注入
            IServiceCollection services = new ServiceCollection();
            services.AddOptions();
            AppSettings.SetAppSetting(conf.GetSection("Appsettings"));
            var a = AppSettings.AppSetting("HomeUrl");

 2.2 封装类型转换工具

        代码中经常会遇到 string与int ,等其他类型的基本转换,try,Convrt 都需要手动处理异常。

        而该类库,则进一步封装

        

//格式转换
string a = "123";
int b = a.ToInt();//强制转换,如果字符串为null或者空,则int类型默认为0
int? c =a.ToIntOrNull();//可空转换,如果字符串为null或者空,则int类型默认为null

 

 

 

项目将会持续完善,敬请期待

 

posted @ 2019-08-10 16:44  代码小六  阅读(796)  评论(0编辑  收藏  举报