随笔分类 - .Net Core
.NET Core 对象到字节数组的序列化和反序列化
摘要:.NET Core中利用MemoryStream和BinaryFormatter可以实现对象到字节数组的序列化和反序列化: 定义ObjectSerializer类,实现对象到字节数组的序列化和反序列化 用BinaryFormatter做序列化和反序列化最大的一个问题是,序列化和反序列化的类型必须是标
阅读全文
Json.NET如何避免循环引用
摘要:Json.NET在将对象序列化为Json字符串的时候,如果对象有循环引用的属性或字段,那么会导致Json.NET抛出循环引用异常。 有两种方法可以解决这个问题: 1、在对象循环引用的属性上打上[JsonIgnore]标签,例如: public class UserProfile { public s
阅读全文
.NET Core中向已存在文件的特定位置写入数据
摘要:本例使用.NET Core向一个文本文件中的特定位置写入数据,来模拟文件上传中的断点续传是如何在服务器端实现的。 新建一个.NET Core控制台项目FileContinueToWrite,其Program.cs的源代码如下: 上面的代码会先运行GenerateFile方法生成一个文本文件Demo.
阅读全文
关于C#中async/await中的异常处理(下)-(转载)
摘要:上一篇文章里我们讨论了某些async/await的用法中出现遗漏异常的情况,并且谈到该如何使用WhenAll辅助方法来避免这种情况。WhenAll辅助方法将会汇总一系列的任务对象,一旦其中某个出错,则会抛出“其中一个”异常。那么究竟是哪个异常?如果我们要处理所有的异常怎么办?我们这次就来详细讨论aw
阅读全文
关于C#中async/await中的异常处理(上)-(转载)
摘要:在同步编程中,一旦出现错误就会抛出异常,我们可以使用try…catch来捕捉异常,而未被捕获的异常则会不断向上传递,形成一个简单而统一的错误处理机制。不过对于异步编程来说,异常处理一直是件麻烦的事情,这也是C#中async/await或是Jscex等异步编程模型的优势之一。但是,同步的错误处理机制,
阅读全文
.NetCore Session.Redis (转载)
摘要:首先创建ASP.NET CORE Web项目,然后按如下顺序操作。 1.添加nuget程序包: 2.在appsettings.json中添加Redis配置: 3.在startup.cs类中,按如下例子添加代码: 4.在控制器HomeController中添加: 5.在View/Index.cshtm
阅读全文
使用Novell.Directory.Ldap.NETStandard在.NET Core中验证AD域账号
摘要:Novell.Directory.Ldap.NETStandard是一个在.NET Core中,既支持Windows平台,又支持Linux平台,进行Windows AD域操作的Nuget包。 首先我们新建一个.NET Core控制台项目:NetCoreLdap,并下载如下Nuget包: Novell
阅读全文
C#可空类型(转载)
摘要:在程序开发中,有时候需要值类型也为可空类型,比如,在数据库中,我们可以把一个日期Datetime设置为null。 在C# 2.0中就出现了可空类型,允许值类型也可以为空(null),可空类型的实现基于C#泛型。 可空类型基本知识 可空类型的核心是System.Nullable<T>,同时静态类Sys
阅读全文
ASP.NET Core 应用程序Startup类介绍 (转载)
摘要:Startup类配置服务和应用程序的请求管道。 Startup 类 ASP.NET Core应用程序需要一个启动类,按照惯例命名为Startup。在主程序的Web Host生成器(WebHostBuilderExtensions)的 UseStartup <TStartup> 扩展方法中指定启动类名
阅读全文
ASP.NET Core多语言 (转载)
摘要:ASP.NET Core中提供了一些本地化服务和中间件,可将网站本地化为不同的语言文化。ASP.NET Core中我们可以使用Microsoft.AspNetCore.Localization库来实现本地化 创建一个MVC网站 为了测试ASP.NET Core的本地化,我们首先在Visual Stu
阅读全文
.NET Core中多语言支持
摘要:在.NET Core项目中也是可以使用.resx资源文件,来为程序提供多语言支持。以下我们就以一个.NET Core控制台项目为例,来讲解资源文件的使用。 新建一个.NET Core控制台项目,然后我们在其中新建一个.resx资源文件叫DemoResource.resx 注意.resx资源文件默认是
阅读全文
C#反射使用时注意BindingFlags的用法(转载)
摘要:最近刚刚开始用反射做项目,遇到一个小的知识点,记录一下。 c#反射查找方法时,默认只能查到public方法。如果想要查找private方法,需要设定BindingFlags. 即: BindingFlags.Public|BindingFlags.Instance 默认查找public、instan
阅读全文
如何在C#程序中模拟域帐户进行登录操作 (转载)
摘要:.NET Core .NET Core也支持用PInvoke来调用操作系统底层的Win32函数 首先要在项目中下载Nuget包:System.Security.Principal.Windows 代码加注释: .NET Framework 代码加注释: 模拟域帐户之后,就有了模拟用户的权限,这里千万
阅读全文
.NET 操作 EventLog(Windows事件日志监控)(转载)
摘要:操作Windows日志:EventLog 如果要在.NET Core控制台项目中使用EventLog(Windows事件日志监控),首先需要下载Nuget包: System.Diagnostics.EventLog 此外执行程序要拥有管理员权限 1:事件日志名(logName):“事件查看器”中的每
阅读全文
HashTable、HashSet和Dictionary的区别(转载)
摘要:1.HashTable哈希表(HashTable)表示键/值对的集合。在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似key-value的键值对,其中key通常可用来快速查找,同时key是区分大小写;value用于存
阅读全文
拥抱.NET Core系列:MemoryCache 缓存域(转载)
摘要:阅读目录 MSCache项目 缓存域 写在最后 在上一篇“《拥抱.NET Core系列:MemoryCache 缓存选项》”我们介绍了一些 MSCache 的机制,今天我们来介绍一下 MSCache 中的缓存域。 MSCache项目 MSCache 目前最新的正式版是 2.0.0,预览版是2.1.0
阅读全文
拥抱.NET Core系列:MemoryCache 缓存选项 (转载)
摘要:阅读目录 MSCache项目 MemoryCacheOptions ExpirationScanFrequency SizeLimit CompactionPercentage 写在最后 在上一篇 ”拥抱.NET Core系列:MemoryCache 缓存过期” 中我们详细的了解了缓存过期相关的内容
阅读全文
拥抱.NET Core系列:MemoryCache 缓存过期 (转载)
摘要:阅读目录 MSCache项目 MSCache提供的过期方式 绝对时间到期 滑动时间到期 自定义过期策略 过期策略组合拳 缓存过期回调 写在最后 在上一篇”拥抱.NET Core系列:MemoryCache 初识”中我们基本了解了缓存的添加、删除、获取,那么今天我们来看看缓存的过期机制。这里和上篇一样
阅读全文
拥抱.NET Core系列:MemoryCache 初识 (转载)
摘要:阅读目录 MSCache能做什么? 从IMemoryCache说起 开发者的体验 写在最后 Cache是一个绝大多数项目会用到的一个技术,说起到缓存可能就联想到 Set、Add、Get、Remove、Clear 这几个方法。那么在.NET Core中微软给我们带来了什么样的缓存体验呢?今天我们就来介
阅读全文
C#中的结构体与类的区别 (转载)
摘要:经常听到有朋友在讨论C#中的结构与类有什么区别.正好这几日闲来无事,自己总结一下,希望大家指点. 1. 首先是语法定义上的区别啦,这个就不用多说了.定义类使用关键字class 定义结构使用关键字struct.在语法上其实类和结构有着很多相似的地方. 定义类的语法 定义结构的语法. 从语法上来看.它们
阅读全文
浙公网安备 33010602011771号