代码改变世界

随笔档案-2011年10月19日

C#中的语言特性“.NET研究”都是从何而来?

2011-10-19 19:40 by 狼人:-), 233 阅读, 收藏, 编辑
摘要: 前几天推荐一个同事用“可选参数”,推荐完了我还画蛇添足的说这是.Net 4中的新特性。但是事后才发现这个新特性是C# 4.0的语言特性,与.Net 4无关。其实也不只这一次,我平时也经常把语言、框架、运行时,有时甚至还有开发工具混为一谈。于是今天就总结一下C#中我感兴趣的几个语言特性是从何而来的。 1.可选参数 可选参数是C# 4.0中的新特性,其作用在于在调用者不提供参数值时给参数一个默认值,用起来是这样的: 上海企业网站设计与制作ode"> static void Main(string[] args){ TestMethod(); TestMethod(10);... 阅读全文

如何解决““.NET研究”呈现控件时出错”的问题

2011-10-19 19:40 by 狼人:-), 201 阅读, 收藏, 编辑
摘要: Webpart部署后在SPD中打开显示呈现控件时出错,后查到这篇文章,主要问题是在CreateChildControls中调用了this.page.Header,在设计视图时,该对象可能还不存在,以后编码时要注意在CreateChildControls尽量不调用数据库/文件系统读取、变量未附初值、调用了类似Page的属性如Session,Page.Request.QueryString等。 在制作控件的时候容易遇到呈现控件时出错发生了未处理的异常。未将对象引用设置到对象的实例。这样的错误,如下图:(也有可能仅仅只是因为未设置runat="server"标签而导致该错误,请先 阅读全文

更改“.NET研究”SharePoint 的web.config设置的两种方式

2011-10-19 19:40 by 狼人:-), 165 阅读, 收藏, 编辑
摘要: MSDN上写的不是很明白,自己测试通过,记录一下: 方法一:通过创建描述一组 Web.config 修改的 XML 文件以声明方式注册 Web.config 项。 备注: 直接写一个webconfig.**.xml到14文件夹下的CONFIG中,在运行stsadm -o copyappbincontent 效果是一样的; 方法一有个缺点,会把所有WebApplication的web.Config都修改掉; 1.在sharepoint解决方案里添加14文件夹下的CONFIG文件夹,新建webconfig.**.xml文件(本文中使用的是webconfig.rj.... 阅读全文

对抽“.NET研究”象编程:接口和抽象类

2011-10-19 19:40 by 狼人:-), 178 阅读, 收藏, 编辑
摘要: 1. 引言 在我之前的一篇post 《抽象类和接口的谁是谁非 》中,和同事管伟的讨论,得到很多朋友的关注,因为是不成体系的论道,所以给大家了解造成不便,同时关于这个主题的系统性理论,我认为也有必要做以总结,因此才有了本篇的新鲜出炉。同时,我将把上贴中的问题顺便也在此做以交代。 2. 概念引入 什么是接口? 接口是包含一组虚方法的抽象类型,其中每一种方法都有其名称、参数和返回值。接口方法不能包含任何实现,CLR 允许接口可以包含事件、属性、索引器、静态方法、静态字段、静态构造函数以及常数。但是注意:C# 中不能包含任何静态成员。一个类可以实现多个接口,当一个类继承某个接口时... 阅读全文

VS2010 测试功能之旅:编码的UI测试(4)-通“.NET研究”过编写测试代码的方式建立UI测试(上)

2011-10-19 19:40 by 狼人:-), 209 阅读, 收藏, 编辑
摘要: 回顾 在之前的入门篇系列中,分别介绍了一个简单的示例, 操作动作的录制原理,通过修改UIMap.UItest文件控制操作动作代码的生成,对象的识别原理。接下来正式进入我们UI测试的进阶篇,在这一章,将讲述如何初步通过自己编写代码的方式来建立UI测试。 示例程序 一个系统的基本功能是增,删,改,查,其中增和改界面基本一样,删就几乎是一个按钮的事,所以我做了一个程序示例(下载点我),拥有增和查两个功能,之后的操作都将会在这个示例之上进行: 系统主窗口: 该系统拥有两个功能,“添加用户”和“查询用户”,点击添加用户后,进入添加用户子窗体: 这里添加用户的时候根据情况会... 阅读全文

Silverlight 2.5D RPG游戏技巧与特效处理:“.NET研究”(四)天气系统

2011-10-19 19:40 by 狼人:-), 163 阅读, 收藏, 编辑
摘要: 如同动态光影一样,天气系统同样为2.5D RPG游戏所不可或缺的元素之一。从视觉角度讲,天气系统让游戏场景空间层次分明,立体感更强;从用户角度讲,天气系统赋予游戏更贴近现实的亲历体验,试想下游戏中的花花草草随风而动,云雾缭绕风雨雷电一切来得自然而平滑,玩家即似身临其境般享受;从功能角度讲,不同的气候状况会对角色及魔法效果产生各异影响,极大的提升游戏趣味性。 模拟相对较真实的天气效果,粒子系统必不可少,天气中的雨、雪、闪电、云雾等均可看做是大量粒子的集合。因此首先我们新建一个名为Particle的粒子类,然后再新建天气对象Weather,本节中我为Weather编写了常见的6种天气状态分... 阅读全文

Silverlight 2.5D RPG游戏技巧与特效处理:(五“.NET研究”)圣赞之HLSL渲染动画

2011-10-19 19:40 by 狼人:-), 273 阅读, 收藏, 编辑
摘要: 或许大家依旧对上一节中的“黑夜”及“梦回过去”记忆犹新,追问下去HLSL到底是何方神圣能实现如此炫酷之效果?HLSL(高级着色器语言)上海企业网站设计与制作an>作为微软的独门兵器,仅供Direct3D使用。Silverlight无比幸运,从第二个版本开始便已获得了这把旷世利器,虽然目前仅能发挥其不到3层之功力,不过前辈Moonlight近期已向世界宣布全面突破技术壁垒,HLSL的威力提升至7层左右。我们完全可以预料的是,未来Silverlight将手握HLSL,踏着GPU 3D API飞扬驰骋,在RIA页游领域所向披靡,制作一切特效及渲染动画都将成探囊取物般轻松而惬意。 上海闵行企业网 阅读全文

VS2010测试功能之旅:编码的“.NET研究”UI测试(2)-操作动作的录制原理(上)

2011-10-19 19:40 by 狼人:-), 276 阅读, 收藏, 编辑
摘要: 回顾 在之前我们介绍了如何用VS2010的UI测试功能创建一个简单的示例,大致描述了如何使用编码的UI测试进行录制和回放,在这章会着重描述VS2010是如何录制操作,并且生成代码,以及初步介绍如何通过自己写代码的方式进行测试。 内容简介 在上一章我们已经介绍过,建立一个编码的UI测试CodedUITest1.cs,录制完成之后,会自动生成一个UIMap1.uitest文件。 图1:录制完成后自动生成的UIMap1.uitest文件 事实上,在录制过程中起着关键作用的并非是CodedUITest1.cs,而是UIMap1.uitest,在录制过程中的所有代码都是生成在UIM... 阅读全文

ASP.NET MVC中对数据进行排序的方“.NET研究”法

2011-10-19 19:40 by 狼人:-), 413 阅读, 收藏, 编辑
摘要: 本系列是讲解如何在asp.net mvc中对数据进行展示、排序、分页等的系列文章。在上周的文章中,一步一步教会了大家如何使用ASP.NET MVC框架去的展示数据。在上周的文章中,我们先用Visual Studio创建了一个新的ASP.NET MVC应用程序,接着连接到了Northwind数据库,并展示了如何使用微软的LINQ-SQL的工具去访问数据库中的数据,接着指导如何去实现视图层去展示产品信息及如何设计控制器。 本文是在上一篇文章的例子基础上,展示了如何去实现数据的双向排序。如果你是已经熟悉ASP.NET WebForm开发的开发者,你应该知道,在GridView控件中可以很简... 阅读全文

VS2010 C++下编译调试MongoDB“.NET研究”源码

2011-10-19 19:40 by 狼人:-), 199 阅读, 收藏, 编辑
摘要: 考虑到mongodb使用了boost库源码,参考mongodb官方文档后,下载编译boost版本是1.42(时间为2010-2-2)或更新版本: boost版本1.42: http://sourceforge.net/projects/boost/files/boost/1.42.0/boost_1_42_0.zip/download 下载boost源码之后,我把boost解压在D盘。 1.在D:\boost_1_42_0\下找到该批处理文件bootstrap.bat,以vs2010命令行方式运行它,并最终生成bjam.exe可执行文件(详细结果及错误信息见生成的bjam.lo... 阅读全文

十步教你ASP“.NET研究”.NET MVC2项目升级MVC 3 RC

2011-10-19 19:40 by 狼人:-), 189 阅读, 收藏, 编辑
摘要: 微软在10号发布了ASP.NET MVC3的发布候选版(RC:Release-candidate),该版本提供了Razor视图引擎的智能感知等功能,并同样具备Online许可。眼馋的同学是不是已经迫不及待的想将现有项目升级呢?这里我就将官方ReleaseNotes中的升级办法翻译总结一下,以方便那些不喜欢看罗里啰嗦的英文文档的广大同学。 译文 要将现有的ASP.NET MVC2项目手动升级到ASP.NET MVC3(RC),我们需要如下这些步骤: 1. 随便创建一个新的ASP.NET MVC3项目,我们在升级中将用到其中包含的一些文件。 2. 从新建项目中将如下这些文件c... 阅读全文

浅谈ASP.NET 4中构造“.NET研究”HTML5视频控件

2011-10-19 19:40 by 狼人:-), 251 阅读, 收藏, 编辑
摘要: 在本文中,将一步步地指导你如何使用Visual Studio 2010和ASP.NET 4的相关知识,打造一个基于HTML5标准规范的视频播放控件,其中你会学习到一些关于HTML 5的知识,还会学到如何使用ASP.NET 4去打造一个服务端的控件。 简介 ASP.NET 4中有大量由微软或第三方提供的控件,但要是这些控件不能满足你的需求,那该怎么办呢?答案是:自己动手去设计! 本教程会指导你如何去开发一个ASP.NET 的服务端控件,你会感受到在开发自己的服务端控件的同时,也提升了你开发的Web应用的质量。我们一般在开发自己的服务端控件的时候,会继承已有的一些服务端控件并添加一... 阅读全文

Microsoft NLayerApp“.NET研究”案例理论与实践 - 项目简介与环境搭建

2011-10-19 19:40 by 狼人:-), 276 阅读, 收藏, 编辑
摘要: 项目简介 Microsoft – Spain团队有一个很不错的面向领域多层分布式项目案例:Microsoft – Domain Oriented N-Layered .NET 4.0 App Sample(在本系列文章中,我使用NLayerApp作为该项目的名称进行介绍),在codeplex上的地址是:http://microsoftnlayerapp.codeplex.com/。 它是学习领域驱动设计(DDD)的一个非常不错的案例项目。该项目采用的是经典的DDD架构,而不是CQRS架构,但我觉得整个案例做的非常不错,基本上包含了基于DDD的架构实践的各个方面。因此,应不少社区朋友... 阅读全文

再次分享一个多选文件上传方案“.NET研究”

2011-10-19 19:39 by 狼人:-), 274 阅读, 收藏, 编辑
摘要: 多选文件上传,已经非常多了,选择性多了可能有时候要比较下哪个更合适,结合到项目中使用更方便才是最重要的。很多的多选上传基本上都是调用的swf文件,确实用flash 或flex开发一个多选上传的功能很方便,比如flex里内置的FileReferenceList对象本身就支持文件的多选,有这个的话就方便多了,下面要说的主要也是基于flex开发的一个多选上传功能。 主要实现的功能如下: 一、选择多个文件上传并显示单个文件的上传进度 二、显示所有文件总的上传进度 三、显示所有上传文件的总大小 四、上传前可以删除任意选定一个或多个文件(按住Ctrl或Shift键) 五、ASP... 阅读全文

.NET中的“.NET研究”异步编程:使用F#简化异步编程

2011-10-19 19:39 by 狼人:-), 182 阅读, 收藏, 编辑
摘要: 不管是使用yield或借助第三方类库来简化异步编程,或多或少总是感觉不那么正统,有点hack的感觉。这种感觉在实验阶段倒还可以,要是用在产品中总有点担心,即使这些类库来自权威的第三方,我不知道大家有没有跟我同样的感觉。那么这个时候我们就会想,如果在语言中直接能提供这种机制该多好呢。 F#的异步工作流 在Visual Studio 2010中,新包含了一种语言:F#。F#的一大特性就是异步计算。能让你用同步的方式编写异步的代码,不用使用AsyncCallback回调将一个方法分为两段,也不用注册异步完成事件。 F#是一个强类型的函数式编程语言,现在是2.0版本,在VS2010中... 阅读全文

也玩MVC3.“.NET研究”0 Razor自定义视图引擎来修改默认的Views目录结构

2011-10-19 19:39 by 狼人:-), 261 阅读, 收藏, 编辑
摘要: 刚刚爱上MVC3.0,几个不眠夜的学习越来越有趣。今天随手尝试自定义Mvc3.0的视图引擎,虽然已成功,但是还发现有点小疑问。随手贴出来希望大家指教指教。 MVC的视图文件目录被固定/Views目录内,区域视图文件也是被固定在/Areas目录下,出于好奇和对目录名的敏感,尝试修改它。通过reflector找到视图引擎的构造接口类上海网站建设ult.aspx?Target=code://System.Web.Mvc:3.0.0.0:31bf3856ad364e35/System.Web.Mvc.VirtualPathProviderViewEngine">VirtualPathP 阅读全文

.NET中的异步编程- IO完成端口以及FileStream.“.NET研究”BeginRead

2011-10-19 19:39 by 狼人:-), 210 阅读, 收藏, 编辑
摘要: 写这个系列原本的想法是讨论一下.NET中异步编程风格的变化,特别是F#中的异步工作流以及未来的.NET 5.0中的基于任务的异步编程模型。但经过三篇文章后很多人对IO异步背后实现的原理以及为什么这样能提高性能很感兴趣。其实我本不想花更多的文字在这些底层实现的细节上,一来我并不擅长这些方面,二来我们使用.NET的异步IO就不需要关心这些底层东西,因为已经为你封装完备了。不过为了避免大家一再在这上面商讨,我还是在这个系列中间插入了一篇来解释一下。 本文我将从内核对象IO完成端口开始介绍,然后来瞧瞧.NET BCL中的FileStream.BeginRead是如何利用IO完成端口来实现的。 ... 阅读全文

ASP.NET MV“.NET研究”C3 基础教程 – Web Pages 1.0

2011-10-19 19:39 by 狼人:-), 248 阅读, 收藏, 编辑
摘要: I:Web Pages 1.0中以“_”开头的特别文件(文件命名时不区分大小写) “_appstart.cshtml” & “_pagestart.cshtml” & “_viewstart.cshtml” _appstart.cshtml - 应用程序启动时在Global. Application_Start方法后执行。 功能:用于进行App的初始化时,需要进行处理的内容,例:向数据库记录系统初始化的一些信息。 功能与Global.Application_Start类似,差别在于:Global的Start先执行,然后在到该_appStart,值得注意的是在_appStart. 阅读全文

引用“.NET研究”类型赋值为null与加速垃圾回收

2011-10-19 19:39 by 狼人:-), 222 阅读, 收藏, 编辑
摘要: 在标准的Dispose模式中,提到了需要及时释放资源,却并没有进一步细说让引用等于null是否有必要。 有一些人认为等于null可以帮助垃圾回收机制早点发现并标识对象是垃圾。其他人则认为这没有任何帮助。是否赋值为null的问题首先在方法的内部被人提起。现在,为了更好的阐述提出的问题,我们来撰写一个Winform窗体应用程序。如下: private void button1_Click(object sender, EventArgs e) { Method1(); Method2(); 上海企业网站制作 ... 阅读全文

在C#中选择“.NET研究”正确的集合进行编码

2011-10-19 19:39 by 狼人:-), 151 阅读, 收藏, 编辑
摘要: 要选择正确的集合,我们首先要上海徐汇企业网站设计与制作了解一些数据结构的知识。所谓数据结构,就是相互之间存在一种或多种特定关系的数据元素的集合。结合下图,我们看一下对集合的分类。 上海闵行企业网站设计与制作上海徐汇企业网站制作 集合分类 在上图中,可以看到,集合总体上分为线性集合和非线性集合。线性集合指元素具有唯一的前驱和后驱的数据结构类型。非线性集合是指具有多个前驱或后驱的数据结构类型,如:树、图。在FCL中,非线性集合实现的比较少,所以我们将会更多的讨论线性集合。 注意:由于类型安全、转型效率等方面的原因,本建议将只讨论泛型集合。 线性集合按存储方式,又分为直... 阅读全文
点击右上角即可分享
微信分享提示