您的位置:首页 > 产品设计 > UI/UE

Type Relationships in Query Operations (LINQ) (查询操作中的类关系)

2007-08-15 23:56 253 查看
LINQ查询操作的数据都是强类型,包括数据源,查询本身。和执行查询中。使用中的变量类型必须兼容数据源中的元素和在foreach中使用的变量。强类型确保错误可以在编译的时候被发现。

net3.0为了方便使用强类型使用了type inference叫做”implicit typing“,(隐性声明,熟悉javascript和vb应该很熟悉)

例如:var city = "Redmond";

重要的是必须明白这些隐性变量在数据源,查询中,已经执行查询的loop中有同样的类型关系。对这些关系有个基本的了解是很有用的,尤其是在类型转换的时候。

一。没有对源数据进行数据转换或加工的查询

图例:





1数据源中的类型和查询的类型是一致的

2数据源中的对象类型决定了查询中的数据类型,所以查询中使用Ienumerable<>是string

3执行查询中的循环迭代也是string

二。改变源数据的查询操作





select语法返回了customer的name字段而不是整个customer。而name是字符串。所以iqueryable是string。执行查询的循环迭代也是string





这个图片和上面其实是一直的。返回数据的时候做了转换

三。让编译器来推断类型

就是使用var关键字拉





本文使用Blog_Backup未注册版本导出,请到soft.pt42.com注册。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: