【发布时间】:2012-09-14 04:10:20
【问题描述】:
我正在阅读此http://jcmartialarts.co.uk/CSharp/Using-Lambda-Expressions-To-LEFT-JOIN-Tables/43,但我无法弄清楚如何做我想做的事。我有这样的表达:
Dim myData = db.Tbl_Exercises.Where(Function(x) x.Exercise_Employee_ID)
我的Tbl_Exercise 模型有一个Exercise_Type_ID。我想使用该 ID 从我的 Tbl_Exercise_Type 模型中获取运动描述的类型,该模型有一个 ExType_Desc 属性,这是我想在我的应用程序中使用的(代替 Tbl_Exercise.Exercise_Type_ID)。
我该怎么做?
编辑:
这是我的模型:
Public Class Tbl_Exercise
<Key()> Public Property Exercise_ID() As Integer
Public Property Exercise_Employee_ID() As Integer
Public Property Exercise_Create_Date() As Date
<ForeignKey("Tbl_Exercise_Type")>
Public Property Exercise_Type_ID() As Integer
Public Property Exercise_Duration() As Integer
Public Overridable Property Tbl_Exercise_Type As Tbl_Exercise_Type
End Class
Public Class Tbl_Exercise_Type
<Key()> Public Property ExType_ID() As Integer
Public Property ExType_Desc() As String
Public Property Exercise_Create_Date() As Date
Public Overridable Property Tbl_Exercise() As ICollection(Of Tbl_Exercise)
End Class
Public Class ExerciseDbContext
Inherits DbContext
Public Property Tbl_Exercises As DbSet(Of Tbl_Exercise)
Public Property Tbl_Exercise_Types As DbSet(Of Tbl_Exercise_Type)
End Class
谢谢。
【问题讨论】:
-
那篇文章看起来很清楚。您能否更具体地说明您遇到问题的地方?
-
好吧,我真的不知道该怎么做。我不明白我提供的链接中给出的语法。另外,我使用的是 VB,而不是 C#。
-
啊...只要意识到
o => o.OrderId等同于Function (o) o.OrderId和(o, i) => new {o, i}等同于Function(o, i) New With {o, i}[稍后翻译更彻底...]
标签: asp.net-mvc vb.net asp.net-mvc-3 lambda