04 2009 档案
摘要:MVC时代来临了,但是一开始是不被很多人接受的。可能的主要原因是,大家不得不告别拖拉控件的至爽感受,回到貌似asp的历史岁月。所以,心有不甘是可以理解的,然而时代显然是进步的。我们虽然必须在View中进行很多HTML代码的工作,但是MVC为我们提供了可以堪称完美的方案(至少我是这样认为的),那就是HtmlHelper。在MVC的View层,我们有很多熟悉的面孔,例如Html.Encode、Html.AntiForgeryToken、Html.BeginForm、Html.TextBox等,而其中ActionLink算是其中的“猛将兄”。
阅读全文
摘要:MVC是个新鲜的东西,至少为ASP .NET Web世界带来或多或少的争议,褒奖者有之,诋毁者有之。这也正常,人类的思维确实没法统一,即便是多个选择其实是件好事儿也一样。不管怎样,评说者至少应该在了解的基础上再进行评论,才显得“专业”,没有品味的找茬型选手实在不值得恭维。
作为MVC范例集锦,我将MVC发布之后业界的应用开源项目做个简单的整理,Anytao不打算对任何项目发表个人观点,因为有些项目未经本人了解,所以此处仅是one by one式的陈列,期望对学习者有些帮助而已。
阅读全文
摘要:提起P/Inoke,我们不可避免的感受到一丝丝的“高深”。一般来说,高深不代表高不可攀,作为.NET平台下于非托管代码交互的基本方式,P/Inoke对大多数Web开发者是个不常光顾的场所,然而互操作问题是或多或少在我们的开发中不期而遇的问题,因为总会在某个偶然我们对托管世界和非托管世界建立一个交集。那么,了解和深入P/Invoke将是你不得不进行起航的拐点,今日我的朋友黄际洲的新书《精通.NET互操作:P/Invoke,C++ Interop和COM Interop》一书提供了一个打开P/Invoke的钥匙,正像本书的定位一样:国内首本全面深入介绍.NET互操作技术的技术书籍。
阅读全文
摘要:在ASP .NET MVC中,以友好的URL访问资源是MVC吸引眼球的特色之一,但是随之而来对于Authorize问题的处理变得令人令人头痛。我们的方案同样是应用ActionFilter实现对Authorize处理。显然我们可以在OnActionExecuting事件中对Action进行“预”处理,将关于Authorize的验证过程统一在OnActionExecuting中进行,就可以对标记的Action实现调用之前的过滤了
阅读全文
摘要:根据登陆用户的角色来决定具体执行的Action(ClientList或者AdminList),并由不同的Action导航到不同的View(ClientBookList或者AdminBookList),而对于不同Action访问的URL都是一样的(http://anytao.com/Book/List/123),同时避免了在服务层对角色的判断,某种程度上按照RoleType对于Controller层进行了“注入”,使得Controller层的逻辑不在关心Action过滤的问题。
阅读全文
摘要:对集合元素进行排序是经常发生的事情,事实上大部分的集合类型都默认实现了Sort方法,进行其元素的排序操作。自定义Comparison为实现更好的Sort控制,提供了很好的扩展机制。
在我们的实际应用中,对于例如BookStore这样的具体应用而言,我更推荐以LINQ的OrderBy来实现。
阅读全文