1
Ich habe einige alte SQL-Code, der eine linke Join bei der Abfrage von Datenbank verwendet. Ich habe keine Ahnung, wie man das mit EF macht, aber ich kann mir vorstellen, dass es viel einfacher ist. (VB.NET neueste Version)Linkes Beitreten in Entity Framework 6
ist hier SQL-Code:
'Now Change each of the dimension values on the EDD stack to EDD dimension Values
' - if Not deleted And on the stack
SqlString = "SELECT * FROM StackUp " +
"LEFT JOIN StackUpItems On IdStackUp=StackUpID " +
"LEFT JOIN DimensionValues ON DimensionValuesId=IdDimensionvalues " +
"WHERE IdStackUp=" + StackUpId.ToString + " AND " +
"isnull(IsDimensionValuesDeleted,0)=0 AND isnull(StackUpItems.IsDeleted,0)=0 ;"
SqlDataAdapter = New SqlDataAdapter(SqlString, SqlConnectionString)
TableNow = New DataTable
SqlDataAdapter.Fill(TableNow)
Ich habe ein paar Dinge ausprobiert, aber ich habe keine Ahnung, was ich tue, wenn es um diese Art von Abfrage kommt.
Hier Code für mein Objekt aus Datenbank:
Function ToggleIsEDD(ByVal StackUpId) As Boolean
'main try
Try
Dim IdNow As Integer = StackUpId
Dim StackUpNow As IEnumerable(Of Stackup) = (From a In Db.Stackup Where a.IdStackup = IdNow).ToList
Angenommen, Ihre Stackup Klasse Navigationseigenschaften für StackUpItems und DimensionValues hat Sie in denen verwenden können Ihre Anfrage: Von einem In Db.Stackup, wo a.IdStackup = IdNow && a.StackUpItems.IsDeleted && a.DimensionValues.IsDeleted ... –
Das hat fast perfekt funktioniert! Musste nur ein bisschen ändern. Vielen Dank! – MattCucco