随笔分类 -  技术应用

技术应用专区,包括各种软件技术的介绍和应用等主题
摘要:Json数据转换为ADO.NET DataSet其实方法有很多,Newtonsoft.Json也提供了DataSet的Converter用以转换Json数据。但是有些情况下DataSet Converter并不管用,而且也不一定能够满足项目需要。这里介绍另一种简单有效的方法,能够方便快速地将Json数据转为ADO.NET DataSet。 设计 事实上Newtonsoft.Json已经提供了一... 阅读全文
posted @ 2015-02-02 10:54 dax.net 阅读(6777) 评论(13) 推荐(8) 编辑
摘要:众所周知Visual Studio 2013中有一个由SignalR机制实现的Browser Link功能,意思是开发人员可以同时使用多个浏览器进行调试,当按下IDE中的Browser Link按钮后,开发中对页面的更改会同步到所有已连接的浏览器中。Browser Link按钮就是位于浏览器调试按钮右边的一个类似“刷新”的按钮:最近在开发apworks.org的新版本(之前因为供应商的问题导致网站全部瘫痪,我也一直没来得及修复,索性自己重新打造一个,顺便也验证Apworks框架的可用性),发现在使用syntaxhighlighter插件的页面上,以前没有问题的页面现在出现了如下错误:研究了很久 阅读全文
posted @ 2013-10-27 19:44 dax.net 阅读(7002) 评论(8) 推荐(4) 编辑
摘要:Microsoft Roslyn是微软.NET“编译器即服务(Compiler as a Service)”的主要产品,它提供了开放的编译器API,并为源代码产生、分析和重构提供了新一代的语言对象模型。Anders Hejlsberg在BUILD 2013大会上提到,C# 6.0的编译器将使用Roslyn实现,这一实现会包含在Visual Studio 2013之后的产品中。根据Anders的描述,C# 6.0的编译器将采用C#开发,从而告别现有的本机代码(native code)的实现方式,“虽然是采用C#来实现C#编译器,但我想性能至少不会比原来的实现方式差。”有关Roslyn的内容,可以 阅读全文
posted @ 2013-10-19 19:33 dax.net 阅读(5324) 评论(4) 推荐(6) 编辑
摘要:最近在项目上遇到一个问题,需要能够在程序中获取Lync会议的链接地址。Lync是微软出品的一套即时通信(IM)客户端软件,配合Microsoft Lync Server使用,其前身是Microsoft Office Communicator(MOC)。与Live Messenger相比,Lync更适合企业内部使用,因为它还具备一定的与企业级应用组件进行整合的功能。在Microsoft Office 2010/2013中,Lync已成为Office中的一个套件。在企业内部使用Outlook和Lync的读者一定知道,Outlook中有一个Lync的插件,当启用了该插件后,即可在“日历”视图中通过单 阅读全文
posted @ 2013-08-11 12:55 dax.net 阅读(4235) 评论(9) 推荐(2) 编辑
摘要:NuGet是一个为大家所熟知的Visual Studio扩展,通过这个扩展,开发人员可以非常方便地在Visual Studio中安装或更新项目中所需要的第三方组件,同时也可以通过NuGet来安装一些Visual Studio的插件等。作为一名开发人员,您可能也会开发一些公共组件以供他人使用,本文将一步步介绍如何以最简单的方式将自己所开发的类库包发布到nuget上,以供更多的人使用。 背景 如果... 阅读全文
posted @ 2013-05-07 13:32 dax.net 阅读(23685) 评论(27) 推荐(17) 编辑
摘要:在进行框架开发的过程中,我们往往需要对配置文件的结构进行设计,以便产生一套完整的配置方案,供开发人员在使用框架时能对框架进行配置。对于某些大型的框架,其配置节点的结构可能相当复杂,比如某个配置节点(Configuration Element)可以有属性,还可以在其下挂载多个其它的配置节点或者多个配置节点集合(Configuration Element Collection)。如果使用手动编写代码的... 阅读全文
posted @ 2011-09-16 10:44 dax.net 阅读(6851) 评论(4) 推荐(9) 编辑
摘要:.NET直接提供对MSMQ的访问支持,只需要添加System.Messaging程序集引用即可方便地操作MSMQ。MSMQ支持两种事务处理模式:内部事务处理以及基于MS-DTC的分布式事务处理。MSMQ的内部事务处理MSMQ的内部事务处理是指,仅采用MSMQ本身提供的事务处理机制完成事务处理。比如,假设有一系列的消息需要发布到MSMQ,那么,就可以启动一个内部事务,确保这些消息的发布过程是一个原子操作。要使用MSMQ的内部事务处理机制,在创建消息队列的时候,就需要勾选“事务性”选项,如下图所示:首先,需要创建一个MessageQueueTransaction的对象,并使用Begin调用以启动M 阅读全文
posted @ 2011-03-15 16:04 dax.net 阅读(7665) 评论(3) 推荐(11) 编辑
摘要:在继续实现Apworks框架的过程中,发现一个必须解决的问题,就是分布式事务处理。它要求两个原本相对独立的工作能够在同一个事务上下文中完成处理。如果处理成功,则两者同时提交,否则,两者同时回滚。Apworks框架需要依赖分布式事务来解决二次提交(2PC)的问题,这个在我之前的博客文章中也提到过,简单地说,就是领域事件的存储和发布必须是一个原子操作。在此,我打算使用2-3篇文章的篇幅对.NET下分布式事务处理的实现做个简单的总结,其中并不会涉及到有关分布式事务的原理/理论方面的内容,仅仅是对其实现方式做个记录。首先需要了解到,虽然.NET分布式事务在一定程度上能够解决Apworks框架中2PC的 阅读全文
posted @ 2011-03-15 08:49 dax.net 阅读(10737) 评论(7) 推荐(13) 编辑
摘要:网上有很多关于权限管理系统的设计方案以及案例,甚至有相关的可以直接使用的权限管理框架。权限管理并非我的研究对象,我也只通皮毛,今天就在专家面前班门弄斧,简单介绍一下微软Dynamics AX系统的权限管理,以及由此派生出来的一种基于.NET的权限设计思想。或许在看完本文后,你会觉得,我所提出的这个想法很火星,你早就知道这种方案了。不要紧,就当我在此将这些内容整理一下,以备日后参考便是了。演练:体验... 阅读全文
posted @ 2010-07-20 11:00 dax.net 阅读(8891) 评论(17) 推荐(4) 编辑
摘要:最近在研究Dynamics AX与AspDotNetStorefront的集成问题。AspDotNetStorefront提供一种领域事件模型,允许开发人员对事件进行定制或捕获,进而执行一些客户化操作。它所支持的EventHandler是一系列的ASP.NET页面,也就是CalloutURL中需要指定一个ASP.NET页面作为Event Handler。在第一次开发的时候,我一直得到“... 阅读全文
posted @ 2010-02-04 09:18 dax.net 阅读(464) 评论(0) 推荐(0) 编辑
摘要:这是我一年半以前用Visual Studio 2005开发的一款文件批处理系统。当时希望能够对一系列的图片文件进行批量处理,于是处于锻炼自己软件设计能力的目的,花了一个月的时间着手开发了这个软件。当然,作为单机版的文件批处理软件,在实用性方面并不具备太多亮点,但它更多的却是在软件扩展性和定制化方面的功能。仍然还是那句话,它是我“练手”的一个作品。今天在整理机器的时候发现了这... 阅读全文
posted @ 2009-11-22 14:42 dax.net 阅读(841) 评论(0) 推荐(1) 编辑
摘要:【本文转载自CSDN论坛:http://topic.csdn.net/u/20081209/10/39b3b38a-0376-45e5-b878-b0305a573712.html】 今天在SD2大会上,听了李建忠老师讲的《.NET框架中的几个典型设计模式》课程收益非浅,李建忠老师的课总能给人醍醐灌顶的感觉,去年的《WPF内核机制》让我们可以从根本上理解WPF的革命。今年的设计模式,也是从根本上理... 阅读全文
posted @ 2009-07-03 11:03 dax.net 阅读(462) 评论(0) 推荐(1) 编辑
摘要:上文对RSS的使用作了简介,现在对RSS的原理作个简单的介绍。首先应该了解到,你发表的博客内容(比如标题、作者、分类、发表时间、正文、Tag等信息)都会被保存到永久介质上(比如后台数据库、文本文件等,一般是关系型数据库)。现假设你的博客系统使用的关系型数据库,并且保存分类和文章的数据表有如下的数据:【“博客分类”表(Categories)】IDCategoryName1.N... 阅读全文
posted @ 2009-05-15 14:46 dax.net 阅读(4724) 评论(0) 推荐(0) 编辑
摘要:我想业内人士和具有WEB专业知识的朋友对“RSS订阅”应该已经非常熟悉了,但更多的网友或许对这一有趣的事情无法理解,甚至根本没有听说过。今天从应用上简要介绍一下RSS订阅。 在WEB 2.0时代,博客已代替原来的日记,成为众多网友发布自己的日记、文章、评论和最新生活动态的主要场所。博主自然希望自己的博客能够被更多的朋友关注和收藏,而另一方面,自己也希望去关注他人的博客。早段... 阅读全文
posted @ 2009-05-08 15:52 dax.net 阅读(1190) 评论(0) 推荐(0) 编辑
摘要:在 上文中,我发布了一个在WLW中插入语法高亮代码的插件,该插件使用table的HTML 标记来分隔代码与行号。这样做的一个问题是,针对不同的博客主题,行 号列的宽度可能需要手动调整,而且大量的<td></td>标记使得博客文章变得很大。为此,我修改了插件源代码,使用空格来分隔代码与行号。这样做其实也有弊端,比如代码折行的时候,折行后的第一个字符会与行号的第一个字符同列,这... 阅读全文
posted @ 2009-05-06 11:03 dax.net 阅读(586) 评论(0) 推荐(0) 编辑
摘要:最近在安装一台Windows Server 2003的虚拟机,打算在这台虚拟机里安装SQL Server 2005、Visual Studio 2008,并部署Dynamics AX 2009 + EP,以便学习之用。弄到一半发现原本分配的20GB硬盘文件(动态模式)容量不够了,而Virtual PC又无法调整vhd文件的容量,因此只能通过internet寻求方法。 上网找到一个vmToolkit... 阅读全文
posted @ 2009-04-02 14:46 dax.net 阅读(2304) 评论(0) 推荐(0) 编辑
摘要:用于在.NET下快速开发控制台应用程序的Adaptive Console Framework框架再次有了新的版本(版本号:3.5.3286.17617)。有兴趣的朋友可以点击这里直接下载安装包使用。与上一个版本(版本号:3.5.3253.15384)相比,最新版具有如下几个更新:将框架DLL、演示程序和文档分别打包发布,允许用户根据自己的需要下载ACF的相关组件。针对初级用户提供了InstallS... 阅读全文
posted @ 2009-03-08 11:31 dax.net 阅读(353) 评论(0) 推荐(0) 编辑
摘要:前段时间在网上看到了一款在WLW中插入语法高亮代码的插件,叫做Highlight4Writer,试用了一下,能够完成基本功能,但有一些不尽人意的缺点:1、插入的代码行间距太大,看起来不舒服,一页只能显示少量代码;2、支持的程序语言有限,无法自己定制;3、语言语法高亮颜色无法自己定制;4、无法显示行号。针对这些问题,我借用SyntaxBox的支持,自己开发了一款在WLW中插入语法高亮代码的插件。 下... 阅读全文
posted @ 2009-02-14 14:34 dax.net 阅读(652) 评论(0) 推荐(0) 编辑
摘要:在一个星期不到的时间里,空闲之余仍然摆弄着Visual Studio 2008,反正一直都在感叹Visual Studio的强大功能,也一直在考虑一些有关用.NET构造大型企业级应用的基础问题。今天,暂且不提什么大型企业级应用,这也不是短时间能够思考清楚的,先拿Visual Studio 2008做些小东西,为Windows Live Writer开发一个插入计算结果的插件吧。 在我们平时写博客的... 阅读全文
posted @ 2009-02-12 08:16 dax.net 阅读(321) 评论(0) 推荐(0) 编辑
摘要:经过一个多月的努力,用于在.NET下开发控制台程序的框架ACF终于有了新的版本。ACF简化了.NET下具有复杂命令行语法的控制台程序的开发过程,不仅使得控制台程序具备可测试性,而且开发人员还能够非常方便地向控制台程序发布新的命令行语法。本次版本更新涉及到了下面几个方面:性能优化支持多个“契约仓储(Contract Repository)”,以使得控制台程序有着良好的扩展性支... 阅读全文
posted @ 2008-12-19 14:17 dax.net 阅读(493) 评论(0) 推荐(0) 编辑