cdrcsy 2009-09-15
LINQ to SQL有很多值得学习的地方,这里我们主要介绍LINQ to SQL映射函数,包括介绍LINQ to SQL 支持存储过程等方面。
LINQ to SQL映射函数和存储过程
LINQ to SQL 支持存储过程和用户定义的函数。在 LINQ to SQL 中,您应将数据库定义的这些抽象映射到客户端对象,以便您可以从客户端代码中以强类型化方式访问它们。方法签名与数据库中定义的过程和函数的签名尽可能类似。
通过调用映射的过程返回的结果集为强类型化的集合。
LINQ to SQL 通过使用 FunctionAttribute 和 ParameterAttribute 属性将存储过程和LINQ to SQL映射函数方法。表示存储过程的方法与表示用户定义的函数的方法通过 IsComposable 属性加以区分。如果此属性设置为 false(默认值),则此方法表示存储过程。如果它设置为 true,则此方法表示数据库函数。
[Function(Name = "GetScores")] public ISingleResult getset([Parameter (DbType="int")] int stuid) { IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())),stuid); return ((ISingleResult)(result.ReturnValue)); }