0

我正在尝试使用 MVC3、LLBLGEN PRO 执行以下操作,它向我抛出了以下错误:

映射类型:LLBLGenProQuery 1 -> LLBLGenProQuery1 SD.LLBLGen.Pro.LinqSupportClasses.LLBLGenProQuery 1[[Mail.DAL.EntityClasses.TblCostCentreEntity, Mail.DAL, Version=1.0.4638.16064, Culture=neutral, PublicKeyToken=null]] -> SD.LLBLGen.Pro.LinqSupportClasses.LLBLGenProQuery1[[Mail.Model.CostCentre, Mail.Model, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]

目标路径:LLBLGenProQuery`1

源值:SD.LLBLGen.Pro.LinqSupportClasses.LLBLGenProQuery`1[Mail.DAL.EntityClasses.TblCostCentreEntity]


Public Function GetAllCostCentres() As SD.LLBLGen.Pro.LinqSupportClasses.LLBLGenProQuery(Of Model.CostCentre) Implements ICostCentreRepository.GetAllCostCentres

    Dim metaData As New LinqMetaData
    Dim q = From p In metaData.TblCostCentre _
                Select p
    Mapper.CreateMap(Of SD.LLBLGen.Pro.LinqSupportClasses.LLBLGenProQuery(Of CostCentre), EntityClasses.TblCostCentreEntity)()
    Mapper.Map(Of SD.LLBLGen.Pro.LinqSupportClasses.LLBLGenProQuery(Of CostCentre))(q)
    'Select New CostCentre With {.Active = p.Active, .CostCentre = p.CostCentre, .CreatedBy = p.CreatedBy, .DateCreated = p.DateCreated, .DateLastModified = p.DateLastModified, .ModifiedBy = p.ModifiedBy, .CostCentreID = p.CostCentreId}

    Return q
End Function
4

1 回答 1

0

可查询的

(http://llblgen.com/documentation/3.5/LLBLGen%20Pro%20RTF/hh_goto.htm#Using%20the%20generated%20code/Linq/gencode_linq_gettingstarted.htm#LinqMetaData)

这是一个查询,它将使编译器生成代码,该代码在运行时创建一个表达式实例树,代表整个查询,简而言之就是一个表达式树。表达式树不能直接执行,必须对其进行解释才能执行表达式树中指定的内容。这就是 Linq 提供程序(如 Linq to LLBLGen Pro)所做的:它接受一个表达式树,将其转换为它可以理解的元素,解释这些元素并生成该查询的可执行形式。

ILLBLGenProQuery (http://llblgen.com/documentation/3.5/LLBLGen%20Pro%20RTF/hh_goto.htm#Using%20the%20generated%20code/Linq/gencode_linq_gettingstarted.htm#ILLBLGenProQuery)

在 LinqMetaData 生成的 IQueryable 元素上定义的接口。该接口允许您通过调用 Execute 方法来执行查询。这样做的好处是您可以在其本机容器中获取查询结果,例如实体集合。另一个优点是,要获取结果列表,提供者不必完整遍历结果,并将结果复制到列表中:返回的结果已经在它们最初存储的容器中。

于 2012-09-13T06:58:05.120 回答