随笔分类 - C#
摘要:Step 1 进入 C:\Users\【User】\Documents\IISExpress\config 。 编辑applicationhost.config文件 加入站点信息如下: Step2:进入 C:\Program Files\IIS Express 文件夹 运行如下命令 iisexpre
阅读全文
摘要:场景: Project A 对Project B存在 project to project reference.这种场景下必须为两者都生成nuget package.这样在load Project A 的nuget package才会自动resolve 他所依赖的Project B的nuget pa
阅读全文
摘要:Step 1: 安装docker for windows Step 2: 从github 上 clone 源代码:https://github.com/dotnet/dotnet-docker-samples/ Step 3: 进入项目跟目录,运行docker build命令。 Step 4: bu
阅读全文
摘要:使用performance monitor 查看 每一个cpu core的cpu time: 打开performance monitor,添加 counter 如下 运行一段cpu bound 的代码: cpu time瞬间彪到100% 结束代码运行。
阅读全文
摘要:.Net Core的安装包的分发地址如下: https://apt-mo.trafficmanager.net/repos/dotnet-release/pool/main/d/ 方法一: 可以分别手动下载和安装sharedframework 和 SDK. dotnet-dev-1.0.0-prev
阅读全文
摘要:首先创建一个空的web项目,如下图所示: 项目创建成功以后,安装下面三个package. Install-Package Microsoft.AspNet.WebApi -Version 5.2.2Install-Package Microsoft.AspNet.WebApi.Owin -Versi
阅读全文
摘要:TaskCompletionSource生成Task的另一种方法.使用TaskCompletionSource很简单,只需要实例化它即可。TaskCompletionSource有一个Task属性,你可以对该属性暴露的task做操作,比如让它wait或者ContinueWith等操作。当然,这个ta
阅读全文
摘要:首先见下图(图一),其中FooController是一个没有实现任何Interface的空类。需要实现的效果是:通过FooController对象调用FooService的Do方法。设置这一不常见的场景主要是为了说明Castle中AdditionalInterfaces的用法。 这个场景诡异的地方在
阅读全文
摘要:随着微软日渐重视开源社区的贡献,微软在自己的产品中往往也会集成开源的第三方库。 比如System.Net.Http.Foramatting.dll 就依赖于Newtonsoft.json v4.5. 所以如果你项目的Newtonsoft.json的版本高于v4.5。当调用System.Net.Htt
阅读全文
摘要:What – OData是什么? OData - Open Data Protocol,是一个设计和使用RESTful API的标准。REST本身只是一个构建web服务的思想和理念,其没有规定一个统一的标准来限制开发人员该如何设计RESTful API。其实我们实际开发中的确也没有遵循某个统一的标准
阅读全文
摘要:下面代码(摘抄之别处,原创在哪不知)是采用TransparentProxy和RealProxy实现对象的动态代理。碍于其使用反射掉用方法,所以就小试着将反射改成Expression以提高执行的效率。第15行就是原来代码中反射掉用方法的关键代码。 其他的辅助类 将15行替换为如下Expressio
阅读全文
摘要:短时间锁定的情况下,自旋锁(spinlock)更快。(因为自旋锁本质上不会让线程休眠,而是一直循环尝试对资源访问,直到可用。所以自旋锁线程被阻塞时,不进行线程上下文切换,而是空转等待。对于多核CPU而言,减少了切换线程上下文的开销,从而提高了性能。) 以下是简单实例(并行执行10000次,每次想li
阅读全文
摘要:Lock是常用的同步锁,但是我们无法在Lock的内部实现异步调用,比如我们无法使用await. 以下面的代码为例,当你在lock内部使用await时,VS会报错提醒。 最简单的解决办法就是使用第三方的库Nito.AsyncEx。可以通过Nuget安装。 通过AsyncLock就可以在锁的内部实现异步
阅读全文
摘要:关键代码第4,5行。 很简单的原理不解释:readonly + Lazy(.Net 4.0 + 的新特性) 测试结果:
阅读全文
摘要:1. 静态构造函数 C#中有静态构造函数, Java中没有静态构造函数。其实Java中有一个类似静态构造函数的东东,称作静态初始化,或者静态代码块,可以通过这样的代码实现相同的功能: 但是Java中静态代码块和C#静态构造函数还是不一样的。C#中静态构造函数在其他静态成员初始化后再执行,而java中
阅读全文
摘要:Paradox数据库是一个成名于15年前的数据库,那时候Borland公司还存在。最近客户提出需求,要在一套用了12年+的应用程序上作些功能更改。这套应用程序使用Delphi+Paradox数据库。 Delphi和Paradox一样太古老,现在会这玩意的人应该不多了吧。想想一种语言太依赖一家公司,结...
阅读全文

浙公网安备 33010602011771号