摘要: 在 EnyimMemcachedCore中实现 Microsoft.Extensions.Caching.Distributed.IDistributedCache 接口时,遇到了一个过期时间处理的问题。在 IDistributedCache 中用到了 DistributedCacheEntryOptions ,其中有一个属性 AbsoluteExpiration 的类型是 DateTimeOffset ,而 EnyimMemcachedCore 计算过期时间用的是 DateTime阅读全文
posted @ 2016-09-27 12:00 dudu 阅读(22) 评论(0) 编辑
摘要: ASP.NET Core 内置了对 CORS 的支持,使用很简单,只需先在 Startup 的 ConfigureServices() 中添加 CORS 策略。但是,当看到上面一堆网址时,当想到每增加一个二级域名都需要修改上面的代码时,一种不舒服的感觉油然而生,一种想偷懒的冲动涌上心头。阅读全文
posted @ 2016-09-22 15:51 dudu 阅读(690) 评论(6) 编辑
摘要: 在我们将站点从 ASP.NET + Windows 迁移至 ASP.NET Core + Linux 的过程中,目前遇到的最大障碍就是 —— 没有可用的支持 .NET Core 的 memcached 客户端。我们一直用的是 EnyimMemcached ,在没有其它选择的情况下,我们自己尝试着将 EnyimMemcached 迁移至 .NET Core。。。基于 .NET Core 修改好了代码,在开发环境下测试通过,在 Linux 服务器上自己访问很正常(没有并发访问量)阅读全文
posted @ 2016-09-21 15:42 dudu 阅读(759) 评论(20) 编辑
摘要: 有园友在博问中提了这样一个问题 —— .NET Core 中文等非英文文字html编码输出问题,到我们的 ASP.NET Core 项目中一看,也是同样的问题。解决这个问题需要从ASP.NET Core MVC中的HtmlHelper下手(上面代码中Html的类型就是HtmlHelper)阅读全文
posted @ 2016-09-17 22:22 dudu 阅读(1865) 评论(12) 编辑
摘要: 前几天发现 AutoMapper 3.3 的一个性能问题(详见:遭遇AutoMapper性能问题:映射200条数据比100条慢了近千倍),于是将 AutoMapper 升级至最新的 5.1.1 看是否也存在这个性能问题。代码运行时在执行 Mapper.Map() 时出现下面的错误:Missing type map configuration or unsupported mapping阅读全文
posted @ 2016-09-15 22:37 dudu 阅读(125) 评论(1) 编辑
摘要: HSTS(HTTP Strict Transport Security) 简单来说就是由浏览器进行http向https的重定向。如果不使用HSTS,当用户在浏览器中输入网址时没有加https,浏览器会默认使用http访问,所以对于https站点,通常会在服务端进行http至https的重定向。如果用阅读全文
posted @ 2016-09-15 13:45 dudu 阅读(72) 评论(0) 编辑
摘要: 今天遇到了AutoMapper的一个性能问题,使用的是AutoMapper的Project特性,AutoMapper版本是3.3.0。当获取包含200条数据的列表时,竟然超过5秒。而改为200条数据,只需不到10毫秒。相差近千倍,真是不可思议。阅读全文
posted @ 2016-09-11 22:37 dudu 阅读(194) 评论(1) 编辑
摘要: 今天重装了一台Linux服务器的Ubuntu 14.04系统,需要重新安装.NET Core 1.0。按照官网上的文档用apt-get命令进行安装。安装后运行dotnet -v命令却提示找不到命令。安装后运行dotnet -v命令却提示找不到命令:dotnet: command not found。阅读全文
posted @ 2016-08-01 21:19 dudu 阅读(297) 评论(7) 编辑
摘要: 阿里云推荐的Redis服务.NET客户端是ServiceStack.Redis,但ServiceStack.Redis不支持异步,不支持.NET Core,于是尝试使用StackExchange.Redis。Microsoft.Extensions.Caching.Redis用的也是StackExc阅读全文
posted @ 2016-08-01 17:48 dudu 阅读(289) 评论(6) 编辑
摘要: 今天早上准备实现当用户以http访问站点时自动跳转为https访问,于是想当然地在后端web服务器中添加了一条如下的URL重写规则(IIS URL Rewrite Module)。结果http的确跳转为https,但是直接以https访问,Chrome浏览器却出现“Redirect too many times”的错误,https访问竟然也会跳转,怎么回事?阅读全文
posted @ 2016-07-28 12:38 dudu 阅读(363) 评论(4) 编辑
摘要: 今天在阿里云上购买了WoSign的https证书,在证书签发后,在控制台下载证书文件,一共有2个文件,一个是.key文件(私钥文件),一个是.pem文件(证书文件)。然后在阿里云负载均衡“证书管理”控制台中创建证书,将.pem文件中的内容复制/粘贴到上面的“证书内容”文本框中,将.key文件中的内容复制/粘贴到上面的“私钥”文本框中,创建证书总是失败。阅读全文
posted @ 2016-07-27 19:54 dudu 阅读(242) 评论(0) 编辑
摘要: 在博问中(.net core怎么实现邮件发送)知道了MailKit无法使用阿里云邮件推送服务发送邮件的问题,自已实测也遇到同样的问题,而用自己搭建的邮件服务器没这个问题。 于是,向阿里云提交了工单。。。在提供了TCP抓包数据后,阿里云技术专员发现了问题所在:在认证通过后,MailKit发送了EHLO阅读全文
posted @ 2016-07-11 19:27 dudu 阅读(277) 评论(0) 编辑
摘要: 将一个ASP.NET Core站点在Linux服务器上以self-contained部署方式发布出来后,直接在终端上运行下面的命令,站点可以正常运行。但是通过supervisor以服务方式运行却失败,查看错误日志发现是因为找不到appsettings.json文件,可appsettings.json文件明明就在那里。阅读全文
posted @ 2016-07-09 17:51 dudu 阅读(369) 评论(1) 编辑
摘要: 今天准备将一个在Windows上用VS2015开发的ASP.NET Core程序部署到阿里云Linux服务器上,部署时发现这台服务器是内网服务器,无法直接安装.NET Core SDK,于是想到尝试用self-contained的方式进行部署。 Self-contained部署方式就是每个应用程序自阅读全文
posted @ 2016-07-03 16:22 dudu 阅读(627) 评论(4) 编辑
摘要: 要在生成环境下在Linux服务器上跑ASP.NET Core站点,首先要解决的问题是以服务的方式运行ASP.NET Core站点,这样即使服务器重启,站点也能自动运行。Node.js中有强大的pm2,而.NET Core目前一无所有,只能自己动手实现。摸索了一个晚上,终于实现,在这篇博文中分享一下。阅读全文
posted @ 2016-07-02 21:41 dudu 阅读(499) 评论(3) 编辑
摘要: 之前都是在ASP.NET Core中使用依赖注入(Dependency Injection),昨天遇到一个场景需要在.NET Core控制台程序中使用依赖注入,由于对.NET Core中的依赖注入机制不了解,竟然无从下手。今天正准备阅读DependencyInjection的源代码,发现园子里的一篇博文,读后豁然开朗,遇到的问题也随之解决。阅读全文
posted @ 2016-06-02 11:06 dudu 阅读(638) 评论(0) 编辑
摘要: 这是今天遇到的一个实际问题,在这篇随笔中记录一下解决方法。ASP.NET Web API提供了CORS支持,但ASP.NET MVC默认不支持,需要自己动手实现。可以写一个用于实现CORS的ActionFilterAttribute,我们就是这么实现的。阅读全文
posted @ 2016-05-28 17:19 dudu 阅读(459) 评论(4) 编辑
摘要: .NET Core RC1时project.json中的配置如下...,升级至ASP.NET Core RC2时project.json修改为如下配置...,.NET Core RC1时Enyim.Caching.xproj文件的内容如下,升级至.NET Core RC1时将Enyim.Caching.xproj文件的内容修改为...阅读全文
posted @ 2016-05-24 11:13 dudu 阅读(516) 评论(0) 编辑
摘要: 在Visual Studio 2015中将一个包含WCF引用的项目的targetFramework从4.5改为4.6.1的时候,VS2015会重新生成WCF客户端代理类。如果WCF引用配置中选中了"Reuse types in referenced assemblies"(这是默认配置),生成的所有WCF客户端代理类都为空。阅读全文
posted @ 2016-05-18 17:08 dudu 阅读(416) 评论(2) 编辑
摘要: 今天在IIS上部署一个ASP.NET站点时遇到一个很奇怪的问题,不管访问什么页面,都会跳到登录页面,即使是访问静态文件。折腾半天,百思不得其解,百整不得其果。。。后来突然想到,是不是站点所在文件夹的文件系统权限的问题?于是查看网站文件夹权限,果然权限设置有问题阅读全文
posted @ 2016-04-26 18:24 dudu 阅读(212) 评论(0) 编辑