1

我已经开始将一些现有的 LINQ to SQL 查询转换为使用存储过程的查询。但是,返回结果的格式不同,我想知道是否有一种聪明的方法可以从一种格式转换为另一种格式。

因此,例如,我有一个 LINQ 查询,它返回一组 IQueryable 格式的整数:

public static Func<rdfsDataContext, IQueryable<int>>
              SubClasses = CompiledQuery.Compile( ( rdfsDataContext itsRdfsContext ) =>
                           itsRdfsContext.rdfs_statements.Where( s => s.predicate == kSubClassId )
                           .Select( s => s.subject ) );

使用存储过程时,再次通过 LINQ 调用,返回格式为:

 ISingleResult<SubClassesResult> subClasses = itsRdfsContext.SubClasses( kSubClassId );

其中 SubClassesResult 是一个由 LINQ 系统自动生成的类,它只包含一个属性,一个名为“Subject”的整数。

有没有什么简单的方法可以将存储过程返回的结果从这个 ISingleResult<SubClassesResult> 格式转换为我以前使用的 IQueryable<int> 格式?

4

1 回答 1

4

关于什么

 subclasses.Select(a=>a.Subject).AsQueryable();

?

于 2013-08-17T11:23:24.097 回答