代码改变世界

一起谈.NET技术,领域驱动设计案例:Tiny Library:简介

2011-09-01 23:46 by 狼人:-), 306 阅读, 0 推荐, 收藏,
摘要:应广大网友的要求,我最近抽空基于ASP.NET MVC + WCF + Entity Framework做了一个案例,该案例以图书馆图书管理、读者借书、还书为业务背景,以领域驱动设计为思想指导,全程采用Microsoft技术进行实践,希望能够给Microsoft技术的狂热者以及领域驱动设计的学者提供实践参考。 本案例选用的业务逻辑非常简单,所以项目取名上我选用了“Tiny Library”,在后面一章我将详细介绍这个案例的业务逻辑、模型设计与系统架构。 下载案例 本来打算将项目发布到codeplex上,便于大家交流,也便于代码更新与维护,但由于某些原因,我无法在自己的网络环境中连接... 阅读全文

一起谈.NET技术,ASP.NET MVC3 让依赖注入来的更简单(新补充了Ninject示例)

2011-09-01 23:46 by 狼人:-), 211 阅读, 0 推荐, 收藏,
摘要:昨天,我写了一篇文章(参见:ASP.NET MVC 依赖注入),这种实现方式我个人一直感觉不太顺,在写出来与大家一起分享的同时, 也是想让大家提提自己的建议, 今天下载了微软发布的最新的 ASP.NET MVC3 Beta 版,同时也仔细阅读了它的 Release Notes, 让我感觉到惊喜的是,MVC3增加了对依赖注入的支持,增加了一 个IDependencyResolver 接口定义,真的是很不错,比起我原来的实现要顺畅很多, 还是老方法,上微软牛人们的博客逛一圈看看有没有已经写好的代码,有就拿来用之,没有就只能自己写了,结果让我很失望,也可能是我太笨, 我没有找到... 阅读全文

一起谈.NET技术,Silverlight 布局(附照片墙示例及源码)

2011-09-01 23:46 by 狼人:-), 385 阅读, 0 推荐, 收藏,
摘要:前言 很喜欢一种人,他们可以把一种技术分析得很透彻,由浅入深,深入浅出,不管你是初学者还是资深人士,看上去都会感觉非常舒服。 但是有时候,试图去描述一个技术点是很困难的事情。 开始,你觉得这个技术很有价值,你通过自己花了一定时间去学习,想要把自己的理解与心得分享,于是就打算写一篇随笔;可是当你开笔之后,突然发现描述起来很困难,虽然在你心中那个概念已经很简单了,但是却要用很多文字来描述,而且不同的技术可能有不同的“上下文”,每个人可能也有不同的“上下文”,在写了几个字之后你有点想放弃了;可是最后又不甘心,聪明的你灵机一动,做了一个Demo,大概对着图片描述一下,然后发布,让读者自... 阅读全文

一起谈.NET技术,IoC+AOP的简单实现

2011-09-01 23:45 by 狼人:-), 763 阅读, 0 推荐, 收藏,
摘要:对EnterLib有所了解的人应该知道,其中有一个名叫Policy Injection的AOP框架;而整个EnterLib完全建立在另一个叫作Unity的底层框架之上,我们可以将Unity看成是一个IoC的框架。对于一个企业应用来说说,AOP和IoC是我们进行逻辑分离和降低耦合度最主要的方式,而将两者结合起来具有重要的现实意义。 一、基于IoC+AOP的编程 到底将IoC和AOP进行整合后,会对编程但来怎样的影响,我写了一个简单的例子(你可以从这里下载该实例)。假设我现在有两个模块,分别称为Foo和Bar,通过如下同名的类来表示。Foo和Bar具有各自的接口,分别为IFoo和IBa... 阅读全文

一起谈.NET技术,ASP.NET Process Model之二:ASP.NET Http Runtime Pipeline[下篇]

2011-09-01 23:45 by 狼人:-), 181 阅读, 0 推荐, 收藏,
摘要:ASP.NET Process Model索引 ASP.NET Process Model之一:IIS 和 ASP.NET ISAPI ASP.NET Process Model之二:ASP.NET Http Runtime Pipeline[上篇] ASP.NET Process Model之二:ASP.NET Http Runtime Pipeline[下篇] 二、ASP.NET Runtime Pipeline 现在我们真正进入ASP.NET管辖的范畴,下图基本上囊括整个处理过程涉及的对象,接下来我们一起来讨论这一系列的对象如何相互协作去处理Http Request,并最... 阅读全文

一起谈.NET技术,C# 委托知识总结

2011-09-01 23:45 by 狼人:-), 175 阅读, 0 推荐, 收藏,
摘要:1.什么是委托,为什么要使用委托 我正在埋头苦写程序,突然想喝水,但是又不想自己去掉杯水而打断自己的思路,于是我就想让女朋友去给我倒水。她去给我倒水,首先我得让她知道我想让她干什么,通知她之后我可以继续写自己的程序,而倒水的工作就交给了她。这样的过程就相当于一个委托。 在程序过程中,当程序正在处理某个事件的时候,我需要另外的程序代码去辅助处理一些事情,于是委托另一个程序模块去处理,而委托就可以达到这种目的,我可以利用委托通知另外的程序模块,该去调用哪个函数方法。委托其实就起到了这样一个作用,将函数签名传递到了另一个函数中。或许这样讲还是有些模糊,看看后面的具体实例。 2.委... 阅读全文

一起谈.NET技术,概括ADO.NET数据库连接的所有形式(基础)

2011-09-01 23:45 by 狼人:-), 202 阅读, 0 推荐, 收藏,
摘要:你可能熟悉其中部分数据库读取的形式,但是熟悉全部的估计很少,或者你完全忘记了,因为这些形式被封装到你自己框架的底层,自己搞过一两次就在也没有动手写过了。但是笔者觉得这部分知识是应该牢固掌握的,这个是基础。 第一种:通过直接在cs文件中编写查询语句调用dbcom.ExecuteNonQuery();执行插入数据 1 //连接字符串 2 string ConnectionString = ConfigurationManager.ConnectionStrings["db_Test01ConnectionString"].ConnectionString; 3 string P 阅读全文

一起谈.NET技术,使用 Silverlight Media Framework 构建自定义播放器

2011-09-01 23:45 by 狼人:-), 263 阅读, 0 推荐, 收藏,
摘要:流媒体已在网络上无处不在。似乎所有人(从新闻站点到社交网络再到隔壁的邻居)都在享受在线视频体验。由于用户群的不断攀升,大多数站点需要以一种值得信赖、用户友好的方式为其客户提供高品质视频,通常为高品质带宽感知 视频。 在线媒体传输体验的核心要素是播放器本身。播放器是用户与之发生交互的介质,它可以驱使用户获得在线体验的每一个要素。播放器如此备受关注,毫无疑问,基于 Web 的现代媒体播放器在实现时势必要比几年前的老款播放器复杂得多。因此,开发人员需要一个稳健的框架来构建播放器。 Silverlight Media Framework (SMF)是一个开源项目,由 Microsoft 在 20... 阅读全文

一起谈.NET技术,保护您的 Silverlight 应用程序的安全

2011-09-01 23:45 by 狼人:-), 168 阅读, 0 推荐, 收藏,
摘要:作为一名 Microsoft 服务顾问,我定期与客户和合作伙伴一起进行应用程序安全性讨论。 在本文中,我将介绍一些在这些讨论中提出的主题。 特别是,我将重点介绍编程人员在尝试保护 Silverlight 应用程序的安全时所面临的新挑战,而且我将考虑开发团队应该将其资源集中于哪些方面。 本文提到了许多技术概念,您可以在其他位置(包括本杂志)找到这些概念的更多详细信息。 因此,我就不在技术层面更加深入地讨论这些主题。 本文的目标是“理清头绪”并介绍如何利用这些概念保护您的应用程序的安全。 当规划应用程序的安全性时,考虑三个 A 非常有用:身份验证 (Authentication)、授权 (... 阅读全文

一起谈.NET技术,Entity Framework 缓存处理与日志监控

2011-09-01 23:45 by 狼人:-), 450 阅读, 0 推荐, 收藏,
摘要:在Kooboo中使用了Entity Framework作为持久化框架,但由于EF1.0并没有提供完整缓存解决方案,一直以来都在为数据缓存而烦脑,在没有找到合适解决方案的情况下,采取了临时的解决办法:直接缓存实体。但是由于Entity实体都是带状态的,并且都与ObjectContext有间接的反向引用,缓存带状态的实体,会造成对象上下文混乱和连接资源的无法被正确释放。因此缓存的Entity实体,首先必须被分离或者重新定义POCO实体来代替Entity实体作为缓存对象。这样一来,所有的缓存实体的关联关系都会失效,造成使用上的麻烦和整个软件框架存在严重的不足。 再说说EF的SQL日志问题。在... 阅读全文

一起谈.NET技术,Sql Server性能优化——Partition(管理分区)

2011-09-01 23:45 by 狼人:-), 264 阅读, 0 推荐, 收藏,
摘要:在企业管理器中,虽然有“管理分区”的菜单,里面的内容却可能与你的预想不同,这里并没有提供直接对分区进行操作的方法,所以一些普通的操作,比如“增加分区”、“删除分区”之类的操作就需要通过脚本实现了。 增加分区(Split Partition) “增加分区”事实上就是将现有的分区分割开,基于此,在SQL Server中应用的是Split操作。在分离分区的时候,不仅仅要在Partition Function上指定分割的分界点,同样需要在Partition Scheme上指定新分区应用的文件组: --指定下一个分区应用文件组PRIMARYALTER PARTITION SCHEME [My... 阅读全文

一起谈.NET技术,Visual Studio自定义调试窗体两个小技巧

2011-09-01 23:45 by 狼人:-), 170 阅读, 0 推荐, 收藏,
摘要:本文翻译:Few Tips on Customizing Debugging Window View in Visual Studio 。 使用DebuggerBrowsable特性可以自定义调试窗体。 使用DebuggerDisplay特性可以自定义调试信息的显示。  要使用这些特性,需要引用System.Diagnostics命名空间。 技巧1、使用DebuggerBrowsable特性 你可以通过在属性上使用DebuggerBrowsable特性来自定义调试窗体。这些特性可以用任何属性、字段和索引上。DebuggerBrowsable的构造函数需要一个Deb... 阅读全文

一起谈.NET技术,Silverlight 自定义控件模板管理

2011-09-01 23:45 by 狼人:-), 272 阅读, 0 推荐, 收藏,
摘要:在 Silverlight 里面建自定义控件(Templated Control),会在工程下生成一个Themes文件夹,并在其中包含一个generic.xaml 文件。这是一个 ResourceDictionary 文件,所有的自定义控件的默认样式(Default Style)都必须放在这里。 最原始的办法就是把所有样式都直接写在 generic.xaml 文件里,但如果自定义控件足够多,generic.xaml 达到了好几千行,管理起来当然十分麻烦。后来在同事的推荐下,搞到两种方法可以将各自定义控件的样式分开管理,总算解决了这一令人头疼的问题。 MergeDefaultStyl... 阅读全文

一起谈.NET技术,SilverLight自动安装

2011-09-01 23:45 by 狼人:-), 197 阅读, 0 推荐, 收藏,
摘要:1、 准备js,参考了一个js弹出层的例子。最后自动输出exe,类似flash安装。ie可以自动安装,其他浏览器需要手动下载安装包。 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> var isOK = Silverlight.isInstalled("4.0.50524.0"); if (!isOK) { var msgw, msgh, bordercolor; msgw = 450; //提示窗口的宽度 msgh.. 阅读全文

一起谈.NET技术,.NET多线程的探讨

2011-09-01 23:45 by 狼人:-), 182 阅读, 0 推荐, 收藏,
摘要:本文开始总结.NET下的多种多线程机制,不断更新中,往各位补充。  Invoke机制 最近在实验一个webservice时候,想到了要用异步机制,于是好好研究了一下多线程和Invoke机制,这里写点小小的心得,如有不妥,请各位指教。 我们往往会遇到这样的需求:有一个十分耗时间的工作(比如一个WebSerive的请求),我们不希望它阻塞现有的UI线程(因为这样会导致界面假死),而是希望它在另外一个线程里面执行,并在执行完毕之后将结果“通知”UI线程。这个需求需要通过Invoke和委托机制实现。 参考资料: http://www.cnblogs.com/c2303191/ar... 阅读全文
上一页 1 ··· 240 241 242 243 244 245 246 247 248 ··· 312 下一页