以前开发ASP.NET项目的验证码功能,都是自己用GDI+去绘制。现在都是使用质量比较高的插件,除了省时省力,安全性也比自己瞎搞的高,我自己个人项目中比较常用的是BotDetect CAPTCHA这个插件,当然还有其他十分优秀的验证码插件,感兴趣的可以网上找找。
最近研究了下百度的星火计划2.0,在为文章页面的meta标签标注发布时间时,遇到了一个C#的时间格式转化问题,需要将文章发布时间转化为ISO8601规范的UTC格式。由于比较少遇到这个知识点,就做个笔记记录下。
如果将UTC时间再通过ToString()方法的"z"/"zz"/"zzz"自定义格式说明符进行转化,就引发DateTimeInvalidLocalFormat异常。
之前在我写的一篇关于URL重写模块的文章中,看到评论有咨询这样的一个问题:想要实现访问A站点的API,让B站点的API响应,并且是以HTTP POST请求的形式,但是设置rewrite不起作用,依然是A站点的API响应,如果使用redirect的方式,会以GET方式访问B站点API并返回404。要想实现不同站点之间的POST请求重写,最主要的技术点有两个,一个是服务器级别的URL重写,另一个是用ARR做反向代理。
记录一个ChinaPay.dll模块导致应用程序池崩溃关闭的问题,其实半年前就曾遇到这个问题,当初只是简单的处理下,想以后重构这个功能,毕竟主要原因还是清楚的。但是人算不如天算,到现在都还没重构这个旧版本的ChinaPay支付功能模块。
本文主要记录我在网站全局设置方面,使用和选择存储方式的一些心得和经验。对于网站的全局配置信息,选择什么样的存储方式还是要先根据客观因素和需求进行分析。
在使用Web Deploy发布网站到阿里云服务器的时候,visual studio提示发布失败,本以为是个小问题,结果花费了我一个小时。按照官方推荐的方法都无法解决,最后将全部文件发布就莫名其妙可以了。
服务器上安装了MySQL后,发现某些ASP.NET网站打开会出现machine.config配置错误,后来在解决问题的过程中发现,这可能是MySQL的一个BUG,不过倒是有解决的方法,国外很多猿类也遇到这个问题,经过我的研究整理出了几个解决方法,都是十分有效的,主要还是和MySQL Connector/NET这个驱动程序有关系!
为了对比新版本的BlogEngine.NET,特意通过WEB平台下载和安装3.2旧版本,结果无法运行,出现HTTP 500.19错误,错误代码为0x80070032。其实以前接触BlogEngine.NET时候也常常遇到这个问题,就是应用程序池的.NET Framework版本没有选择正确!
最近无意中看到BlogEngine.NET 3.3.5.0 已经发布了,提供了新的标准模板,于是下载到一台测试服务器中看看效果,发现后台的某些菜单无法打开,会出现404.2或者404.0错误。根据不同情况,主要和IIS的ISAPI和CGI限制的设置,处理程序映射模块,URL地址错误有关系。
这阵子又在鼓捣着C#控制台应用程序,主要功能就是一个定时维护小工具,通过windows server的任务计划程序,传入外部参数并运行C#控制台程序,此外也涉及到传参调试的问题,网上这类资料也是很多的,自己也做个笔记记录下。
这里博主结合了自己的工作经验和日常编程所接触到相关知识,总结了下自己对C#控制台应用程序在运用方面的理解。由于受到本身的技术水平影响,文章必然存在局限性,希望能给看到文章的朋友提供点思路,控制台肯定还能运用在更多方面和实现更加强大的功能!