总结了一下写项目中遇到的各种方法,总结前辈们的经验,生成了该类库,引用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 = "";
int b = a.ToInt();//强制转换,如果字符串为null或者空,则int类型默认为0
int? c =a.ToIntOrNull();//可空转换,如果字符串为null或者空,则int类型默认为null

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

C#通用公共类库ZXNetStandardDepot.Common的更多相关文章

  1. ASP.NET中常用的几个李天平开源公共类LTP.Common,Maticsoft.DBUtility,LtpPageControl

    ASP.NET中常用的几个开源公共类: LTP.Common.dll: 通用函数类库     源码下载Maticsoft.DBUtility.dll 数据访问类库组件     源码下载LtpPageC ...

  2. ASP.NET中常用的几个李天平开源公共类LTP.Common,Maticsoft.DBUtility,LtpPageControl (转)

    ASP.NET中常用的几个开源公共类: LTP.Common.dll: 通用函数类库     源码下载Maticsoft.DBUtility.dll 数据访问类库组件     源码下载LtpPageC ...

  3. C# - Lee 公共类库

    我的公共类库 using System; using System.IO; using System.Net; using System.Security.Cryptography; using Sy ...

  4. ThinkPHP 3.2公共类库、应用类库ThinkPHP/Library讲解

    一.ThinkPHP的类库主要包括公共类库和应用类库,都是基于命名空间进行定义和扩展的.只要按照规范定义,都可以实现自动加载.        公共类库 公共类库通常是指ThinkPHP/Library ...

  5. Java笔记-添加自定义公共类库

    大型项目,为了方便团队开发,需要建立公共类库,提高类库的重用性和维护性步骤如下: --如果朋友您想转载本文章请注明转载地址"http://www.cnblogs.com/XHJT/p/387 ...

  6. 如何使用 TP中的公共函数 (定义在common/common.php中的函数)

    如何使用 TP中的公共函数 (定义在common/common.php中的函数) (2011-09-30 15:32:09) 转载▼ 标签: 杂谈   1.在common/common.php 中有个 ...

  7. 最长公共子串(Longest common substring)

    问题描述: 给定两个序列 X=<x1, x2, ..., xm>, Y<y1, y2, ..., yn>,求X和Y长度最长的公共子串.(子串中的字符要求连续) 这道题和最长公共 ...

  8. Webpack抽离第三方类库以及common解决方案

    前端构建场景有两种,一种是单页面构建,另一种是多入口构建多页面应用程序(我视野比较小,目前就知道这两种),下面我们针对这两种场景总结了几种抽离第三方类库以及公共文件的解决方案. 如果有哪些地方优化不周 ...

  9. 利用后缀数组(suffix array)求最长公共子串(longest common substring)

    摘要:本文讨论了最长公共子串的的相关算法的时间复杂度,然后在后缀数组的基础上提出了一个时间复杂度为o(n^2*logn),空间复杂度为o(n)的算法.该算法虽然不及动态规划和后缀树算法的复杂度低,但其 ...

随机推荐

  1. 缺陷的严重程度(Severity)

    该bug对用户造成的影响有多大.(1)Urgent 死机重启等致命bug(2)Veryhigh 非常严重的bug(3)High 严重的bug(4)Medium 中等程度的bug(5)Low 小的bug

  2. chown与chmod的区别

    chown 修改文件和文件夹的用户和用户组属性 1.要修改文件hh.c的所有者.修改为sakia的这个用户所有 chown sakia hh.c 这样就把hh.c的用户访问权限应用到sakia作为所有 ...

  3. (转载)OpenStack client 调用分析

    https://blog.csdn.net/yenai2008/article/details/72722038?utm_source=itdadao&utm_medium=referral# ...

  4. 第09组 Beta冲刺(3/4)

    队名:软工9组 组长博客:https://www.cnblogs.com/cmlei/ 作业博客:https://edu.cnblogs.com/campus/fzu/SoftwareEngineer ...

  5. react项目如何运行

    react项目如何运行 一.总结 一句话总结: npm i 安装好package.json的 指定插件后,npm start 启动项目 二.react项目的安装与运行 转自或参考:react项目的安装 ...

  6. jsp页面获取后台传过来的list集合的长度

    在jsp页面导入函数标签库: <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"% ...

  7. Java基础 switch 简单示例

        JDK :OpenJDK-11      OS :CentOS 7.6.1810      IDE :Eclipse 2019‑03 typesetting :Markdown   code ...

  8. ThinkPHP 控制器不存在问题排查

    新手经常会遇到这种问题,提示控制器找不到,一般的情况如下: 1. 命名空间地址错误 检查你的控制器命名空间是否正确

  9. JDBC Request :Cannot load JDBC driver class 'com.mysql.jdbc.Driver'解决办法

    在Jmeter中run JDBC Request时,收到了Cannot load JDBC driver class 'com.mysql.jdbc.Driver',在网上搜了一些办法,结合自己的实际 ...

  10. [LeetCode] 111. Minimum Depth of Binary Tree 二叉树的最小深度

    Given a binary tree, find its minimum depth. The minimum depth is the number of nodes along the shor ...