2013年10月18日

如何选择Html.RenderPartial和Html.RenderAction

摘要: Html.RenderPartial与Html.RenderAction这两个方法都是用来在界面上嵌入用户控件的。 Html.RenderPartial是直接将用户控件嵌入到界面上: 或 注意:用第一种方法时,用户控件必须放在调用者同一目录下,也可以放在View/Shared中。 Html.RenderAction则通过Controller中的Action来调用用户控件Controller:----用户控件所在Controller public ActionResult UserControl() { return PartialView(); }View:----调用用户控件的View .. 阅读全文

posted @ 2013-10-18 16:04 itjeff 阅读(282) 评论(0) 推荐(0) 编辑

2013年10月15日

ASP.NET MVC 使用TryUpdateModel 更新的技巧

摘要: 有使用 ASP.NET MVC 的朋友應該會對於 TryUpdateModel 有一定的認知,他不但可以利用 Metadata 來做欄位的驗證確保資料的正確性,也可以指定更新的條件以及不更新的條件來達到萬用的功能,因為他的好用所以 demo 也是經常使用他,但是使用的時候多少會覺得每次都要指定欄位很麻煩嗎?這裡告訴大家一個小技巧,讓你的 TryUpdateModel 更順手。 TryUpdateModel 是擁有 10個多載的方法,所以可以應用範圍是很廣的,本文將利用 ActionFilter 的技巧來設定排除的欄位。最簡單的寫法就是這樣寫var oldData = _r.GetSingleD 阅读全文

posted @ 2013-10-15 14:00 itjeff 阅读(710) 评论(0) 推荐(0) 编辑

2013年10月14日

Select与SelectMany的区别

摘要: Select() 和 SelectMany() 的工作都是依据源值生成一个或多个结果值。Select() 为每个源值生成一个结果值。因此,总体结果是一个与源集合具有相同元素数目的集合。与之相反,SelectMany() 将生成单一总体结果,其中包含来自每个源值的串联子集合。作为参数传递到 SelectMany() 的转换函数必须为每个源值返回一个可枚举值序列。然后,SelectMany() 将串联这些可枚举序列以创建一个大的序列。string[] text ={ "Albert was here", "Burke slept late", "C 阅读全文

posted @ 2013-10-14 16:31 itjeff 阅读(9660) 评论(0) 推荐(0) 编辑

c#中 ==与equals有什么区别

摘要: 对于值类型、引用类型来说比较过程怎样的?using System;using System.Collections.Generic;using System.Text;namespace ConsoleApplication1{ class Person { private string name; public string Name { get { return name; } set { name = value; } } public Person(string name) { this.name = name; } }class Program { static voi... 阅读全文

posted @ 2013-10-14 13:52 itjeff 阅读(316) 评论(0) 推荐(0) 编辑

2013年10月11日

C#中反射的概念及其使用(转)

摘要: 提纲:1、 什么是反射2、 命名空间与装配件的关系3、 运行期得到类型信息有什么用4、 如何使用反射获取类型5、 如何根据类型来动态创建对象6、 如何获取方法以及动态调用方法7、 动态创建委托1、什么是反射 Reflection,中文翻译为反射。 这是.Net中获取运行时类型信息的方式,.Net的应用程序由几个部分:‘程序集(Assembly)’、‘模块(Module)’、‘类型 (class)’组成,而反射提供一种编程的方式,让程序员可以在程序运行期获得这几个组成部分的相关信息,例如: Assembly类可以获得正在运行的装配件信息,也可以动态的加载装配件,以及在装配件中查找类型信息,并创建 阅读全文

posted @ 2013-10-11 11:29 itjeff 阅读(384) 评论(0) 推荐(0) 编辑

C# 反射技术应用

摘要: 反射(Reflection)是.NET中的重要机制,通过放射,可以在运行时获得.NET中每一个类型(包括类、结构、委托、接口和枚举等)的成员,包括方法、属性、事件,以及构造函数等。还可以获得每个成员的名称、限定符和参数等。有了反射,即可对每一个类型了如指掌。如果获得了构造函数的信息,即可直接创建对象,即使这个对象的类型在编译时还不知道。 1、.NET可执行应用程序结构 程序代码在编译后生成可执行的应用,我们首先要了解这种可执行应用程序的结构。 应用程序结构分为应用程序域—程序集—模块—类型—成员几个层次,公共语言运行库加载器管理应用程序域,这种管理包括将每个程序集加载到相应的应用程序域以... 阅读全文

posted @ 2013-10-11 11:08 itjeff 阅读(427) 评论(0) 推荐(0) 编辑

C#反射机制介绍

摘要: 反射的定义:审查元数据并收集关于它的类型信息的能力。元数据(编译以后的最基本数据单元)就是一大堆的表,当编译程序集或者模块时,编译器会创建一个类定义表,一个字段定义表,和一个方法定义表等。 System.reflection命名空间包含的几个类,允许你反射(解析)这些元数据表的代码System.Reflection.AssemblySystem.Reflection.MemberInfoSystem.Reflection.EventInfoSystem.Reflection.FieldInfoSystem.Reflection.MethodBaseSystem.Reflection.Const 阅读全文

posted @ 2013-10-11 11:01 itjeff 阅读(693) 评论(0) 推荐(0) 编辑

C#反射浅析

摘要: 首先了解C#反射的概念,反射是一个运行库类型发现的过程。通过反射可以得到一个给定程序集所包含的所有类型的列表, 这个列表包括给定类型中定义的方法、字段、属性和事件。也可以动态的发现一组给定类支持的借口、方法的参数和其他 相关信息如基类、命名空间、数据清单等。 C#反射命名空间详细介绍: 1.System.Reflection命名空间内的各类型 (1) Assembly通过它可以加载、了解和操纵一个程序集 (2) AssemblyName 通过它可以找到大量隐藏在程序集的身份中的信息,如版本信息、区域信息等 (3) EventInfo 事件的信息 (4) FieldInfo 字段... 阅读全文

posted @ 2013-10-11 10:22 itjeff 阅读(321) 评论(0) 推荐(0) 编辑

2013年10月10日

Delegate,Action,Func,Predicate的使用与区别

摘要: C#4.0推出后,类似Linq,Lamda表达式等许多新的程序写法层次不穷。与之相关的Delegate,Action,Func,Predicate的使用和区别也常常让大家迷惑,此处就结合实际的应用,对其进行详细的说明。在书写代码时,常常会用到委托,这个在winform下较常见,但自定义Delegate时,我们常常发现Delegate必须全局可见,才能在需要的地方进行使用,而对于私有的delegate对象,在本类中进行使用,这似乎是不方便的。下边我们来看传统的Delegate的写法。public delegate void MyDelegate(string name); public clas 阅读全文

posted @ 2013-10-10 16:11 itjeff 阅读(364) 评论(0) 推荐(0) 编辑

2013年10月9日

IEnumerable,IQueryable的区别

摘要: IEnumerable,IQueryable之前世今生 IEnumerable在.Net2.0中我们已经很熟悉了.你想要利用Foreach迭代吗?实现IEnumerable吧!你想直接做为数据源绑定到控件吗?使用IEnumerable吧!是的.只要是序列.它都实现了IEnumerable(.Net1.0下的序列类除外).除了这些.LINQ的出现.还赋予了IEnumerable更强悍的功能.IQueryable继承IEnumerable.详细看IEnumerable和IQueryable这两个API的签名.可以说非常相似.从某种意义上来说.它们是可以 互换的.但是却不总是可以互相代替的.IEnu 阅读全文

posted @ 2013-10-09 17:55 itjeff 阅读(394) 评论(0) 推荐(1) 编辑

导航