Fork me on GitHub
上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 55 下一页
摘要: 当我们要创建一个Tcp/UDP Server connection ,我们需要一个范围在1000到65535之间的端口 。但是本机一个端口只能一个程序监听,所以我们进行本地监听的时候需要检测端口是否被占用。命名空间System.Net.NetworkInformation下定义了一个名为IPGlobalProperties的类,我们使用这个类可以获取所有的监听连接,然后判断端口是否被占用. //... 阅读全文
posted @ 2014-01-27 22:03 张善友 阅读(11691) 评论(1) 推荐(4) 编辑
摘要: 空白字符是指在屏幕不会显示出来的字符(如空格,制表符tab,回车换行等)。空格、制表符、换行符、回车、换页垂直制表符和换行符称为 “空白字符”,因为它们为与间距单词和行在打印的页 )的用途可以读取更加轻松。 标记分隔 (一定) 由空白字符和由其他标记,例如运算符和标点。在分析代码时, C 编译器忽略空白字符,除非使用它们作为分隔符或作为字符常数或字符串文本元素。使用空白字符使程序更易于阅读。请注意编译器还将注释作为空白。下面贴一段c#处理空白字符的代码:public static class TypeExtensions { // The Trim method only ... 阅读全文
posted @ 2014-01-27 21:12 张善友 阅读(9237) 评论(1) 推荐(2) 编辑
摘要: 微软开源技术公司于发布了Tx,这是一个Apache 2协议的开源项目,可以使用日志/跟踪文件辅助调试,以及创建实时监控和告警系统。 下面是几个引人关注的功能—— 允许在原始事件源上使用LINQ 允许在真实事件源上使用“反应式扩展框架(Reactive Extensions)”,而且支持事件序列的多路复用(单个包含不同类型事件的序列,其中事件的顺序为其发生顺序)。 可以提供跨... 阅读全文
posted @ 2014-01-26 14:10 张善友 阅读(1246) 评论(0) 推荐(0) 编辑
摘要: Jeff Handley’s进行了多年的项目——基于一份开源许可发布WCF RIA Services。遵循Apache 2许可,捐赠给Outercurve基金会的ASP.NET Open Source Gallery。 作为开源项目发布后,它将被命名为Open RIA Services,项目的领导者是MVP Colin Blair,他已经发布了未来三个版本的路线图: Open RIA S... 阅读全文
posted @ 2014-01-26 13:57 张善友 阅读(1242) 评论(0) 推荐(0) 编辑
摘要: SQL Server 2012对T-SQL进行了大幅增强,其中包括支持ANSI FIRST_VALUE和LAST_VALUE函数,支持使用FETCH与OFFSET进行声明式数据分页,以及支持.NET中的解析与格式化函数。 codeproject上有几篇文章全面介绍了SQL Server 2012 的T-SQL查询: Using SQL Server 2012 T-SQL New Featu... 阅读全文
posted @ 2014-01-13 22:23 张善友 阅读(1306) 评论(2) 推荐(0) 编辑
摘要: 早上衣明志 在QQ群里说他的博客开源了,地址在 https://github.com/qihangnet/MZBlog,基于NancyFX和MongoDB开发的。博客内容需要使用 MarkDown 进行编写。Nancy框架是ASP.NET之外用.NET开发Web App的一种选择,而且也是一种很简单的选择。所以本文本着学习Nancy 框架的分析了下衣大哥的代码,下图是个脑图:1、MongoDB:数据存储采用NoSQL MongoDB,采用官方的驱动 mongocsharpdriver。2、核心库的测试项目MZBlog.Core.Tests:项目采用xUnit.NET测试框架,xUnit.net 阅读全文
posted @ 2014-01-11 21:38 张善友 阅读(6726) 评论(10) 推荐(6) 编辑
摘要: 大家好! 今天的博文深入讨论我们今天推出的开发人员工具和框架中的一些新功能。我们通过与 ASP.NET 和 Visual Studio 团队合作开发了一些重大的增强功能,让开发人员能够轻松使用 Windows Azure Active Directory 作为其身份验证服务。 我们今天的客座博友是 Vittorio Bertocci,很多人都是通过他的许多个人演讲和网络广播认识他的。Vitto... 阅读全文
posted @ 2014-01-04 23:11 张善友 阅读(1783) 评论(0) 推荐(0) 编辑
摘要: Disruptor-NET算法(是一种无锁算法)需要我们自己实现某一种特定的内存操作的语义以保证算法的正确性。这时我们就需要显式的使用一些指令来控制内存操作指令的顺序以及其可见性定义。这种指令称为内存栅栏。内存一致性模型需要在各种的程序与系统的各个层次上定义内存访问的行为。在机器码与的层次上,其定义将影响硬件的设计者以及机器码开发人员;而在高级语言层次上,其定义将影响高级语言开发人员以及编译器开发人员和硬件设计人员。即,内存操作的乱序在各个层次都是存在的。这里,所谓的程序的执行顺序有三种:(1)程序顺序:指在特定CPU上运行的,执行内存操作的代码的顺序。这指的是编译好的程序二进制镜像中的指令的 阅读全文
posted @ 2013-12-30 22:52 张善友 阅读(3635) 评论(3) 推荐(1) 编辑
摘要: SSDB是一个开源的高性能数据库服务器, 使用Google LevelDB作为存储引擎, 支持T级别的数据, 同时支持类似Redis中的zset和hash等数据结构, 在同时需求高性能和大数据的条件下, 作为Redis的替代方案.已经有了c#的api,在Mono上跑了一下 阅读全文
posted @ 2013-12-29 20:21 张善友 阅读(38832) 评论(13) 推荐(11) 编辑
摘要: 硬件和系统配置操作系统Ubuntu13.04系统位数64CPUIntel(R) Core(TM)2 Duo CPU内存4G硬盘Seagate ST2000DM001-1CH164测试工具PostgreSQL-9.1.11 测试工具工具名称pgbench数据量200W(整个数据库大小约为300M)模拟客户端数4线程数4测试时间60秒准备命令:pgbench -i -s 20 pgbenchdb测试命令:pgbench -r -j4 -c4 -T60 testdb 配置文件默认的配置配置文件是保存在/etc/postgresql/VERSION/main目录下的postgresql.conf文件如 阅读全文
posted @ 2013-12-28 23:18 张善友 阅读(25982) 评论(0) 推荐(2) 编辑
摘要: ADO.NET连接SQL Server有时候联机会无故的中断 (例如闲置过久或是交易时间太长等因素),这时又要重新连接,在.NET Framework 4.5之前,这件事情要由开发人员自己依照ADO.NET的SqlException来判断并自行重试,重试的算法也要由开发人员来自定义,所以SQL Database的CAT (Customer Advisory Team) 开发了Transient F... 阅读全文
posted @ 2013-12-28 18:58 张善友 阅读(1802) 评论(0) 推荐(1) 编辑
摘要: 2013年12月26日,由51CTO独家举办的2013年度IT博客大赛圆满落幕,荣幸跻身10强[http://fellow.51cto.com/art/201312/425528.htm],首先感谢各位评委和众多网友的大力支持和51CTO提供的这个平台,完全超越我的预期,参加51CTO组织的“2013年度IT博客大赛”的目标很简单,就是希望自己的博客能够被更多的人看见,让社区消除对.NET的偏见,... 阅读全文
posted @ 2013-12-28 12:01 张善友 阅读(1071) 评论(0) 推荐(2) 编辑
摘要: 管道概念 POSIX多线程的使用方式中, 有一种很重要的方式-----流水线(亦称为“管道”)方式,“数据元素”流串行地被一组线程按顺序执行。它的使用架构可参考下图: 以面向对象的思想去理解,整个流水线,可以理解为一个数据传输的管道;该管道中的每一个工作线程,可以理解为一个整个流水线的一个工作阶段stage,这些工作线程之间的合作是一环扣一环的。靠输入口越近的工作线程,是时序较早的工作... 阅读全文
posted @ 2013-12-27 22:40 张善友 阅读(83854) 评论(5) 推荐(3) 编辑
摘要: CaptchaMvc是一个有弹性的、简单的解决方案,它能够解决你项目中所有与验证码相关的问题。你需要做的所有事情就是向你的项目中添加一个类库,添加之后验证码就准备就绪了。该项目拥有使用验证码所需要的所有内容:有两种类型的验证码,普通的和数学的支持在session或者cookie中存储验证码支持“智能验证码”能够很容易地扩展默认实现CaptchaMvc项目也在不断地演变,我会尽量支持所有人提出的需求。我认为这些就是区分它和其他项目的主要内容。CaptchaMvc项目支持ASP.NET MVC 3、4和5,这些版本之间几乎没有什么不同,仅仅是类库中使用了MVC 4中添加的AllowAnonymou 阅读全文
posted @ 2013-12-26 06:48 张善友 阅读(4499) 评论(1) 推荐(0) 编辑
摘要: 单页面应用程序(SPA)[使用JavaScript、CSS和HTML强大的功能,可以构建一个单页面应用程序(SPAs)],它提供了丰富的用户体验页面。导航技术和AJAX提供必要的功能,而不用重新加载页面. 由于成熟的web标准技术javascript,CSS,和HTML,使得SPA发展壮大。所有这些可以用来构建功能全面的用户接口包括一个web页面,在页面内使用一个或更多的技术导航到不同的内容。而... 阅读全文
posted @ 2013-12-21 11:51 张善友 阅读(3660) 评论(0) 推荐(0) 编辑
摘要: .NET 4.5.1, .NET 4.5 和 .NET 4.0 均基于 .NET 4.0 CLR,而 .NET 4.5 对 CLR进行了升级和Bug修复..NET 4.0 - 4.0.30319.1 (.NET 4.0 的第一个版本).NET 4.0 - 4.0.30319.296 (.NET 4.... 阅读全文
posted @ 2013-12-17 22:48 张善友 阅读(4218) 评论(1) 推荐(1) 编辑
摘要: 远程文件系统的访问有很多种不同的实现方式,一些常见的连接方式比其它特定情况下的更有用。最著名的一个例子就是微软的通用互联网文件系统(CIFS),它可以容许微软Windows“映射网络驱动器”并利用资源管理器对网络进行“浏览”。另一个是最早由太阳计算机系统开发的网络文件系统(NFS),作为美国电话电报公司开发的UNIX系统配置已经有15年的历史了。尽管还存在几十种其他的选择,但这两种系统占... 阅读全文
posted @ 2013-12-15 16:17 张善友 阅读(9280) 评论(2) 推荐(0) 编辑
摘要: 32feet.NET[http://32feet.codeplex.com/]是shared-source的项目,支持CF.net 2.0以及桌面版本.NET framework,提供短距离领域(personal area networking technologie)的通信功能,支持bluetooth,Infrared(IrDA)红外等. 苹果在今年发布iOS7的同时,推出了基于蓝牙4.0开发... 阅读全文
posted @ 2013-12-15 14:39 张善友 阅读(3760) 评论(0) 推荐(0) 编辑
摘要: Coevery是开源的.NET Web平台项目,力争打造一个开放而鲁棒的CRM系统,采用Orchard架构,并使用AngularJS改善页面体验。作为一个后发优势的CRM 产品,Coevery 具有一些后期发展的优势,特别采用非常现代 技术。像: 单页面应用程序 (SPA),响应设计, ASP.NET API等等,而且开发公司是个国内的公司:http://www.novasoftware.cn/... 阅读全文
posted @ 2013-12-14 18:25 张善友 阅读(6077) 评论(1) 推荐(3) 编辑
摘要: 什么是MindMap? MindMap(被译成思维导图或心智图)是一种思维工具,由英国的记忆之父托尼-博赞发明。 MindMap是一种新的思维模式,它将左脑的逻辑、顺序、条例、文字、数字,以及右脑的图像、想像、颜色、空间、整体等各种因素全部调动起来,把一长串枯燥的信息变成彩色的、容易记忆的、有高度组织性的图,它绘制起来非常简单,而且十分有趣这样。利用MindMap不但可以增强思维能力,提升... 阅读全文
posted @ 2013-12-14 16:34 张善友 阅读(2500) 评论(0) 推荐(0) 编辑
摘要: Opserver是闻名遐迩的网站Stack Overflow的开源监控解决方案,由Stack Exchange发布。它基于.NET框架构建,这在监控工具领域有些与众不同。旨在为每个受监控系统的健康状况提供一个快速的总体视图,还允许用户使用下钻方法进行深入挖掘。Nick Craver是Opserver... 阅读全文
posted @ 2013-12-14 08:33 张善友 阅读(5079) 评论(5) 推荐(2) 编辑
摘要: NetMQ 是 ZeroMQ的C#移植版本。ZeroMQ是一个轻量级的消息内核,它是对标准socket接口的扩展。它提供了一种异步消息队列,多消息模式,消息过滤(订阅),对多种传输协议的无缝访问。NetMQ 也是一个社区开源项目,网站在Github上 https://github.com/zerom... 阅读全文
posted @ 2013-12-08 20:06 张善友 阅读(30492) 评论(16) 推荐(5) 编辑
摘要: C#实现DNS解析服务有一个开源项目ARSoft.Tools.Net, ARSoft.Tools.Net是一个非常强大的开源DNS控件库,包含.Net SPF validation, SenderID validation以及DNS Client、DNS Server接口。使用该接口可轻松实现DNS客户请求端及服务器解析端。项目地址:http://arsofttoolsnet.codeplex.com/。用法可以参考这篇文章《【原创】C#编程实现DNS Client和Server》。Codeplex上还有一个HDDevWebTeam开发的一款智能DNS服务器,实现不同网络运行商用户请求同一个域 阅读全文
posted @ 2013-12-08 14:50 张善友 阅读(7534) 评论(1) 推荐(0) 编辑
摘要: MSBuild 是 Microsoft 和 Visual Studio的生成系统。它不仅仅是一个构造工具,应该称之为拥有相当强大扩展能力的自动化平台。MSBuild平台的主要涉及到三部分:执行引擎、构造工程、任务。其中最核心的就是执行引擎,它包括定义构造工程的规范,解释构造工程,执行“构造动作”;构造工程是用来描述构造任务的,大多数情况下我们使用MSBuild就是遵循规范,编写一个构造工程;MSB... 阅读全文
posted @ 2013-12-01 20:25 张善友 阅读(85171) 评论(2) 推荐(5) 编辑
摘要: Ostrich 是twitter用于监控服务器性能的一个scala库,项目地址https://github.com/twitter/ostrich, 主要功能是收集、展示统计信息, 同时也提供了关闭服务器、重新加载配置、 监测服务器有效性等简易控制功能, 以及获取线程、GC、以及Profile等调试和性能信息。GitHub上有一个C#的移植版本OstrichNet,移植版本只支持收集、展示统计信息... 阅读全文
posted @ 2013-11-30 14:21 张善友 阅读(1331) 评论(0) 推荐(0) 编辑
摘要: 有3篇文档详细介绍http://kb.linuxvirtualserver.org/wiki/Windows_Servers_in_LVS/DR_and_LVS/TUN_Clustershttp://blog.loadbalancer.org/direct-server-return-on-windows-2008-using-loopback-adpter/LVS + KEEPALIVED + WINDOWS SERVER 2008 R2 ------高可用负载均衡在Windows Server上需要做下面的配置:1、安装microsoft loopback adapter。2、配置micr 阅读全文
posted @ 2013-11-17 19:20 张善友 阅读(4596) 评论(2) 推荐(0) 编辑
摘要: 什么是CS-Script?CS-Script是一种以CLR(公共语言运行库)为基础的脚本系统,它使用ECMA标准的C#作为编程语言,它面向微软的CLR运行库(.net 2.0/3.0/3.5/4.0)并且完全支持Mono(http://www.oschina.net/p/mono)。CS-Script是开源的,它的许可协议:http://www.csscript.net/Licence.html。支持商业化用途。CS-Script 将c#语言与.net框架类库强大丰富的功能结合在一起,组成了灵活的脚本系统。它适用于自动化解决各种编程任务,对于系统/网络管理员、研发人员、测试人员很实用。CS-S 阅读全文
posted @ 2013-11-08 06:23 张善友 阅读(7531) 评论(1) 推荐(3) 编辑
摘要: MongoDB是个非常棒的解决方案,不过困扰我们的是很少有人了解过关于它的一些限制。这样的事情正在不断上演:人们看到MongoDB的限制,心里却认为这些是它的Bug。 本文列举了颇让作者困惑的一些MongoDB限制,如果你也打算使用MongoDB,那么至少要提前了解这些限制,以免遇到的时候措手不及。 阅读全文
posted @ 2013-11-06 22:19 张善友 阅读(11168) 评论(1) 推荐(2) 编辑
摘要: 用 Redirect 方法可将浏览器重定向到另一个 URL,而不是将内容发送给用户。 这里有一篇文章介绍使用Redirect《Using Response.Redirect Effectively》 ,文章详细的讨论了Response.Redirect ,给出了一段代码: public static class HttpResponseExtensions { publi... 阅读全文
posted @ 2013-10-27 07:30 张善友 阅读(7906) 评论(1) 推荐(1) 编辑
摘要: 在邮件列表和讨论区中有很多与REST和Web API相关的讨论,下面仅是我个人对这些问题的一些见解,并没有绝对的真理,InnoQ的首席顾问Oliver Wolf在GOTO Berlin大会上开始自己的演讲“Web API设计原则”时如是说。不要考虑端点。SOAP有一个单独入口点的外观。相比之下Web有很多入口点,它们建立在关系上,彼此之间相互连接,并且以超媒体作为关键要素。为了不让你的API成为一个只有一种接入方式的黑洞,你应该使用超媒体控制按照对听众有意义的表现方式去链接你的资源。不要在API中暴露领域模型。在很多模型中存在的一个问题便是它们仅包含数据,缺乏所有形式的行为,也就是所谓的贫血模 阅读全文
posted @ 2013-10-23 06:24 张善友 阅读(2737) 评论(0) 推荐(1) 编辑
摘要: 台湾微软的一系列Visual Studio跨平台开发Xamarin的资料,上面还有视频。具体参看 http://www.microsoft.com/taiwan/newsletter/library/edm2013/130717vstudio_edm/ ,讲师的博客上也有一系列的文章http://w... 阅读全文
posted @ 2013-10-20 22:24 张善友 阅读(2717) 评论(1) 推荐(2) 编辑
摘要: 世界的大数据包含一个庞大而充满活力的生态系统,但一个开放源码项目上面有这一切,那就是 Hadoop 的王朝。 Hadoop 是事实上的标准的分布式的数据运算。Hadoop 提供了一个 MapReduce 框架编写的应用程序处理大量的结构化和半结构化数据并行跨大型集群的机器以非常可靠和容错的方式。此外... 阅读全文
posted @ 2013-10-20 07:29 张善友 阅读(1725) 评论(0) 推荐(0) 编辑
摘要: cnbeta新闻:微软正式发布Visual Studio 2013 RTM版,微软还发布了Visual Studio 2013的最终版本、.NET 4.5.1以及Team Foundation Server 2013。下面我们体验下Visual Studio 2013 Web开发方面有哪些特性,具体可以参看http://www.asp.net/visual-studio/overview/2013/release-notes。1、.NET Framework 2.0/3.0/3.5/4.0/4.5/4.5.1 支持Visual Studio 2013 从更方面来说比VS2012有很多改进的地方 阅读全文
posted @ 2013-10-18 21:41 张善友 阅读(67237) 评论(29) 推荐(22) 编辑
摘要: Microsoft 在 .NET Framework 4 中添加了一个名为可移植类库 (PCL) 的新功能。 利用 PCL,您可以有选择性地面向 .NET Framework、Silverlight 和 Windows Phone 以及 Windows 应用商店和 Xbox 360 的多个版本,所有这些均可从单个 Visual Studio .NET 项目中实现。 当您选择 PCL 项目模板时,Visual Studio 会自动确保代码仅使用每个所选目标平台上存在的库。 这样就无需使用繁重的预处理器指令和多个生成目标。 另一方面,该功能对可从库调用哪些 API 设定了一些限制;有关 PCL 功 阅读全文
posted @ 2013-10-17 13:08 张善友 阅读(4327) 评论(4) 推荐(2) 编辑
摘要: Jexus不仅支持ASP.NET,而且能够通个自带的PHP-FCGI服务以及PHP-FPM等方式灵活支持PHP而且还可以以.NET(Phalanger)方式支持PHP。 阅读全文
posted @ 2013-10-14 22:12 张善友 阅读(3258) 评论(11) 推荐(6) 编辑
摘要: Nsubstitute是一个开源的框架,源码是C#实现的。你可以在这里获得它的源码:https://github.com/nsubstitute/NSubstitute NSubstitute 更注重替代(Substitute)概念。它的设计目标是提供一个优秀的测试替代的.NET模拟框架。它是一个模拟测试框架,用最简洁的语法,使得我们能够把更多的注意力放在测试工作,减轻我们的测试配... 阅读全文
posted @ 2013-10-13 10:44 张善友 阅读(2447) 评论(0) 推荐(1) 编辑
摘要: 过去几个月,DevOps on Windows网站推出了一系列文章,详细讲解了开发者应怎样创建便于运维的Windows服务。这一系列文章详细分析了如何克服在运维部门看来最困难的部分:Windows服务的安装与其启动阶段。 其中有些困难是由于安装基于.Net的Windows服务时,普遍使用了InstallUtil这个非原生的Windows工具。同时要特别当心启动阶段的代码,它应在启动失败时确保提供... 阅读全文
posted @ 2013-10-12 23:37 张善友 阅读(2382) 评论(1) 推荐(2) 编辑
摘要: 备注:,将我的博客内容整理成册,首先会在博客里优先发布,后续可能的话整理成电子书,主要从linux的最基础内容开始进入Linux的Mono开发方面的话题。本文是我整理博客内容的一篇文章。LJMA 是Linux+Jexus+MariaDB+ASP.NET的简写,其实就是把Jexus, MariaDB以及ASP.NET安装在Linux系统上,组成一个环境来运行ASP.NET的应用。Jexus是Linux下的基于Mono编写的WEB服务软件,而MariaDB是比较小型的数据库软件,ASP.NET是由微软在.NET Framework框架中所提供,开发Web应用程序的类库,通过Mono我们可以让他在L 阅读全文
posted @ 2013-10-10 21:20 张善友 阅读(14825) 评论(17) 推荐(10) 编辑
摘要: 操作系统很早就开始使用内存映射文件(Memory Mapped File)来作为进程间的共享存储区,这是一种非常高效的进程通讯手段。.NET 4.0新增加了一个System.IO. MemoryMappedFiles命名空间,其中添加了几个类和相应的枚举类型,从而使我们可以很方便地创建内存映射文件。... 阅读全文
posted @ 2013-10-06 14:33 张善友 阅读(6439) 评论(2) 推荐(2) 编辑
摘要: DevOps(英文Development和Operations的组合)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。[1] 它的出现是由于软件行业日益清晰地认识到:为了按时交付软件产品和服务,开发和运营工作必须紧密合作。以下几方面因素可能促使一个组织引入DevOps:使用敏捷或其他软件开发过程与方法业务负责人要求加快产品交付的速率虚拟化和云计算基础设施(可能来自内部或外部供应商)日益普遍数据中心自动化技术和配置管理工具的普及有一种观点认为,目前占主导地位的“传统”美国式管理风格(“斯隆模型 vs 丰田模型”)会导致“烟囱 阅读全文
posted @ 2013-10-04 21:04 张善友 阅读(2720) 评论(0) 推荐(0) 编辑
上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 55 下一页