C#常用工具类与开发技巧
文章平均质量分 54
C#常用工具类与开发技巧
张云勇
芸税通产品经理,致力于智能财税相关技术探索,利用AI/RPA/大数据/财税数据模型等相关技术,实现企业财税数字账户建设,助力企业数字化转型升级。
展开
-
用上Parallel让你的.NET应用效率飙升
.NET Framework 和 .NET Core 提供了强大的并行编程支持,其中一个核心工具就是Parallel类。Parallel类是.NET Framework4.0推出的新特性。Parallel类使得在多核系统上执行并行操作变得更加简单和高效。通过并行编程,可以充分利用现代计算机系统的硬件资源,提高应用程序的性能转载 2023-12-04 20:51:15 · 271 阅读 · 0 评论 -
C# List<T>的Contains、Exists、Any、Where性能对比
在实际的开发中,我们经常会需要在一个List中查找指定的元素。而C#中提供了多种查找方法,下面我们来看一下它们之间的性能对比转载 2023-08-18 09:01:09 · 1178 阅读 · 0 评论 -
TempData、ViewData和ViewBag的区别
ViewData是Dictionnary型的,ViewBag是dynamic型,会在程序运行的时候动态解析。ViewData为object型,ViewBag为dynamic型。TempData的使用同ViewData和ViewBag一样,TempData也可以用来向视图传递数据,只是ViewData与ViewBag的生命周期和View相同,它们只对当前View有用。TempData则可...原创 2019-08-29 14:57:43 · 1244 阅读 · 0 评论 -
开源.net框架的CMS
列举出自己见过的asp.net开源cms,方便初学者入门学习,如果有更好的开源cms请在评论中推荐,谢谢!1、DotNetNuke(ASP.NET 2.0) DotNetNuke是一个Web应用框架的理想,为创建和部署的项目,如商业网站,企业内联网和外联网,在网上出版门户,并定制垂直应用软件。 方便用户-DotNetNuke旨在使用户可以更轻松地管理所有方面的项目。下载网址转载 2014-08-27 15:02:49 · 4449 阅读 · 1 评论 -
字符串集合进行拆分
【代码】字符串集合进行拆分。原创 2021-03-23 11:19:38 · 490 阅读 · 0 评论 -
C#实现自定义multipart/form-data的解析器
使用WebSocketSharp自定义实现Web服务时,无法解析multipart/form-data请求的数据。通过查找资料,采用以下方式实现multipart/form-data的解析器。参考:https://bitbucket.org/lorenzopolidori/http-form-parser/src/default/解析辅助类:using System;using System.Collections.Generic;using System.IO;using System原创 2020-07-30 13:43:14 · 3617 阅读 · 3 评论 -
.net core获取本机IP地址
传统使用中,一般使用下面方法 //获取本机可用的IP地址var ips = Dns.GetHostAddresses(Dns.GetHostName()).Where(x => x.AddressFamily == AddressFamily.InterNetwork).Select(x => x.ToString()).ToList();但是发现,在Linux环境中,无法获取到IP地址,应该采用如下方法:string localIp = NetworkInterface原创 2020-06-30 15:08:45 · 4126 阅读 · 0 评论 -
Dapper使用LIKE实现模糊查询
LIKE '%@Nsrmc%' 会解析成'%'@Nsrmc'%' 这里用拼接也是不行的'%'+@Nsrmc+'%' 只能用MySQL函数方法拼接public dynamic GetListByFilter(TaxBasicInfoModel filter, PageInfo pageInfo, int tenantId = 0) { var _where = $" where 1=1 and tenantId={tenantId} ";原创 2020-06-20 17:40:49 · 4145 阅读 · 0 评论 -
c#中如何获取本机MAC地址、IP地址、硬盘ID、CPU序列号等系统信息
我们在利用C#开发桌面程序(Winform)程序的时候,经常需要获取一些跟系统相关的信息,例如用户名、MAC地址、IP地址、硬盘ID、CPU序列号、系统名称、物理内存等。首先需要引入命名空间: using System.Management; /// 获取本机用户名、MAC地址、内网IP地址、公网IP地址、硬盘ID、CPU序列号、系统名称、物理内存。...原创 2015-07-17 11:16:42 · 17156 阅读 · 6 评论 -
C#实现jsencrypt加解密
internal class YunYongJsEncryptHelper { private readonly RSACryptoServiceProvider _privateKeyRsaProvider; private readonly RSACryptoServiceProvider _publicKeyRsaProvider; ...原创 2019-05-29 12:39:30 · 3907 阅读 · 0 评论 -
C# System.Environment.GetFolderPath的使用
C# System.Environment.GetFolderPath的使用原创 2017-07-14 13:51:20 · 6079 阅读 · 0 评论 -
C# 退出程序再重新启动
/// /// 退出登录 /// public static void ReLoign() { Application.ExitThread(); Thread thtmp = new Thread(new ParameterizedThreadStart(Run));原创 2017-06-10 14:18:18 · 5045 阅读 · 1 评论 -
汉字转拼音辅助类
汉字转拼音辅助类原创 2016-08-18 16:26:16 · 515 阅读 · 0 评论 -
C#添加系统计划任务,用于自启动应用
需要引用Microsoft.Win32.TaskScheduler.dll public Form1() { InitializeComponent(); // Get the service on the local machine TaskService ts = new原创 2016-04-22 16:49:30 · 4520 阅读 · 1 评论 -
防止程序多开的两种方法
进程检查private void Form1_Load(object sender, EventArgs e){ //获取当前活动进程的模块名称 string moduleName = Process.GetCurrentProcess().MainModule.ModuleName; //返回指定路径字符串的文件名 string process原创 2014-12-28 19:15:38 · 7732 阅读 · 1 评论 -
C# .net 如何抓取网页内容
ASP.NET 中抓取网页内容是非常方便的,而其中更是解决了 ASP 中困扰我们的编码问题。转载 2014-04-19 22:55:25 · 2933 阅读 · 0 评论 -
C#实现网页内容正文抓取
思路:1、抓取远程网页源码,这里要实现自动判断网页编码,否则有可能抓到乱码。我是先看应答的 http头的chareset,一般这个很准,但像csdn的新闻比较变态http应答的头里的chareset和网页的meta里声明的 chareset不一致,所以我手工加了一下判断,如果不一致再在内存流里用网页声明的编码读取一遍源码2、把网页分割成几大块。试用了一下tidy的.net包装及HtmlPa转载 2014-04-19 22:58:34 · 3388 阅读 · 1 评论 -
IEnumerable扩展方法
// /***********************************************************// * 项目名称: YunDouTax.BaseLib// * 文件名称: EnumerableExtension.cs// * 功能描述: // * 代码作者: 云勇// * 创建时间: 2017年12月25日 11:50 /原创 2018-01-01 21:13:36 · 1394 阅读 · 0 评论 -
Dictionary扩展方法
// /***********************************************************// * 项目名称: YunDouTax.BaseLib// * 文件名称: DictionaryExtension.cs// * 功能描述: // * 代码作者: 云勇// * 创建时间: 2017年12月18日 14:50 /原创 2018-01-01 21:11:55 · 1374 阅读 · 1 评论 -
DateTimeHelper扩展类
public enum RoundTo { Second, Minute, Hour, Day }public static class DateTimeHelper { public static string DefaultFormat; static DateTimeHelper() { DefaultFor原创 2017-11-13 13:38:53 · 801 阅读 · 0 评论 -
SQLite操作公共类
SQLite操作公共类原创 2017-07-14 13:55:40 · 1089 阅读 · 0 评论 -
C# URI编码详解
混乱的URI编码 JavaScript中编码有三种方法:escape、encodeURI、encodeURIComponent C#中编码主要方法:HttpUtility.UrlEncode、Server.UrlEncode、Uri.EscapeUriString、Uri.EscapeDataString JavaScript中的还好,只提供了三个,C#中主要用的就有这么多,还没转载 2017-06-17 16:59:44 · 8439 阅读 · 0 评论 -
.NET(C#)连接各类数据库
1.C# 连接连接 Access 程序代码 : ------------------------------------------------------------------------------- using System.Data;using System.Data.OleDb;..string strConnection="Provider=Microsoft.Jet....转载 2018-07-26 10:07:41 · 591 阅读 · 1 评论 -
AesEncryptHelper帮助类,实现C#版Aes加解密
/// <summary> /// /// </summary> internal class AesEncryptHelper { /// <summary> /// Encrypts the specified asc key. /// </summary> ...原创 2019-05-14 13:31:08 · 1286 阅读 · 0 评论 -
ValidateUtil输入格式验证辅助类
/// <summary> /// 各种输入格式验证辅助类 /// </summary> public class ValidateUtil { #region 正则表达式 /// <summary> /// 电子邮件正则表达式 /// </summary&...原创 2019-05-14 13:40:36 · 934 阅读 · 2 评论 -
LINQ:使用join进行联接
在LINQ中,join可以实现3种类型的联接,分别是内部联接、分组联接、左外部联接。内部联接: private static void UseInnnerJoin() { int[] intArray1 = { 5, 15, 25, 30, 33, 40 }; int[] intArray2 = { 10, 20, 30, 5...原创 2019-09-05 15:50:40 · 1877 阅读 · 0 评论