随笔分类 - 编程语言 / C#
摘要:通过winform或者是控制台应用程序监听http请求,之前使用的是微软的HttpListener,参考https://www.cnblogs.com/duanjt/p/5566336.html 然后这篇文章是介绍Nancy.net的使用方式。具体如下: 首先nuget引用: Install-Pac
阅读全文
摘要:C#开发程序,当需要使用到sqlite时就有可能会出现如上问题。主要原因是sqlite关于x86和x64兼容性问题。 解决方案: 通过nuget获取System.Data.SQLite.dll,编译时只需要选择any cpu即可实现。我这里也把从nuget获取的dll分享出来以供下载。 下载
阅读全文
摘要:datatable我们是经常使用到的,但是需要对数据进行分组,具体代码如下: 这样就实现了分组,返回的result相当于一个dynamic对象。很简单的
阅读全文
摘要:我们在使用SqlConnection的时候可以加入using,那么在using语句结束后就会自动关闭连接。那么这种情况是怎么是实现的呢?我们能够自己写一个类似于SqlConnection的类来让using自动关闭呢?回答当然是没问题的了。首先我们自己写这个类必须要实现IDisposable接口,示例
阅读全文
摘要:request.ContentType = "application/x-www-form-urlencoded";这句话很重要,服务器的不同接收方式这里一定要标注准确了
阅读全文
摘要:需求:图片太大,上传到服务器会非常占用服务器空间,而系统又不要求高清图片,于是就通过递归的方式让图片每次减少10%的大小,当图片大小小于100k的时候就保存在本地,核心代码如下: 重点是方法 zipImage
阅读全文
摘要:C#中我们使用比较多的文件压缩第三方DLL就是Ionic.Utils.Zip.dll。但是这个DLL只支持对现有文件进行压缩,而不支持内存压缩,如果需要使用内存压缩,那么有第三方DLL ICSharpCode.SharpZipLib.dll。 下面把例子粘出来: 压缩后的目录结构如下:
阅读全文
摘要:版本格式:主版本号.次版本号.修订号,版本号递增规则如下: 先行版本号及版本编译元数据可以加到“主版本号.次版本号.修订号”的后面,作为延伸。 原文参考:https://semver.org/lang/zh-CN/
阅读全文
摘要:C# Random循环生成随机数重复问题解决方案1.当我们通过Random生成随机数时,习惯的写法如下: int a=new Random().Next(0,100); 然后生成一个数据数没有任何问题,但是代码修改如下 问题:你会发现生成的随机数居然完全一样。肿么办呢? 2.解决:之所以会出现这样的
阅读全文
摘要:问题描述:通过C#引用Oracle.ManagedDataAccess.dll访问Oracle,写了如下一段代码,在本机能正常访问,但是将编译后的exe放到服务器上面就无法访问了,一直提示登录失败。而服务器上面的pl/sql却能够正常访问数据库。 static void Main(string[]
阅读全文
摘要:C#中int类型的ToString()方法有个重载是输入一个字符串,这个字符串可以对int进行部分格式化操作,如上。
阅读全文
摘要:1.什么是WebAPI,详见:http://www.cxyclub.cn/n/25123/2.一般情况下我们不需要去关心客户端的请求数据,WebAPI会通过自己的方式去将客户端请求的数据转换为实体对象,我们在接口里面定义实体就可以接收数据,但是公司要求必须要记录客户端的请求数据到日志中,于是我们就创
阅读全文
摘要:首先定义公共的返回对象 其次是所有的api接口都必须继承自ApiController。 文件上传的代码如下: [HttpPost] public String SaveFile() { if (Request.Content.IsMimeMultipartContent()) { Request.C
阅读全文
摘要:WinForm如果我们希望一次只打开一个程序,那么我们在程序每次运行的时候都需要检测线程是否存在该程序,如果存在就呼出之前的窗体,C#代码如下: 只要将Program类修改为如上代码即可
阅读全文
摘要:首先我们先看一下最终结果,如下: 要实现如上的效果,具体C#代码如下: 具体的也不多解释了,很简单的一段代码,比使用XmlDocument 简单方便多了
阅读全文
摘要://匿名对象序列化 var obj=new { Name = "张三", Age = 15 }; Console.WriteLine(JsonConvert.SerializeObject(obj)); //匿名集合序列化 List list = new List(); list.Add(new { Name = "张三", Age = 15 }); list.Add(new { Name =...
阅读全文
摘要:具体步骤如下: log4net的配置文件如下: 创建LogHelper如下: 使用方式如下: 创建的日志如图: 配置文件里面内容比较多,可以查阅相关文档进行详细配置! 另外,有时候我们需要把不同级别的文件放到不同的目录,首先配置文件如下: <?xml version="1.0" encoding="
阅读全文
摘要:Newtonsoft.Json.dll提供了非常好的Json序列化和反序列化方式,但是对日期的处理却让我纠结了很久。首先定义类如下: 序列化代码如下: 结果是:{"Id":1,"Name":"zhangsan","BirthDay":"2016-08-03T17:23:54.2480422+08:0
阅读全文
摘要:C#提供的内置对象DataTable功能特别的强大,如果我们需要对DataTable中的某一列进行排序怎么处理呢,具体代码如下: 有了如上代码相信就不需要多说什么了!
阅读全文
摘要:外面可以通过File.ReadAllBytes()和File.WriteAllBytes()进行文件的操作。而GZIP文件的后缀名为.gz 灵感来源:http://www.cnblogs.com/gengaixue/p/3300664.html
阅读全文