zwei Bedingungen überprüfen in der where-Klausel mithilfe von linq 2 entites
Hallo ich habe eine Tabelle namens Produkte mit Spalten
product_id
prodcut_name
prodcut_price( values like 1200,2000,3000,100)
prodcut_desc
category_id(1,2,3,.....)
anorther Tabelle Kategorien mit Spalten
category_id(1,2,3.......)
category_name(a,b,c....)
- und entity-name ist dbcontext...
Wie kann ich die Produkte erhalten, die mit Kategorie name "a" und Produkt-Preis ist >500 <10000
bin ich mit linq to enitities...
jede pls Hilfe..man ....
Vielen Dank....
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du suchst, logische Operatoren, und diese sind diejenigen, die Sie verwenden, in c#:
&&
logischeAND
||
logischeOR
!
logischeNOT
^
logische (bitweise)XOR
COND ? TRUE-STATEMENT : FALSE-STATEMENT
ternärer operatorAlso Ihrer zusammengesetzten Zustand in pseudo-code Aussehen:
Nun, wenn Sie keine Fremdschlüssel in der DB, wenn Sie haben Ihren Kontext, es geht nur um DBSets, und Sie sind nicht gehen zu müssen, Navigations-Eigenschaften. So ist Ihre einzige option ist die Verwendung der Kabine.Jockey ' s Antwort.
Wenn Sie über Fremdschlüssel in der DB, haben Sie die navigationseigenschaften auf Ihre entity-Objekte, und Sie werden in der Lage sein, Folgendes zu tun:
Alternativ können Sie die LINQ-extension-Methoden direkt:
Wenn Sie eine Liste oder ein array und wollen in der Nähe dbcontext, die Sie anrufen, entweder
ToList
oderToArray
aufquery
:Gibt es alternativen Weg, es zu tun mit Entity Framework (EF) - build-in EntitySQL query language. Sie haben ähnliche Ausdrücke mit es:
wo
ProductsQuery
istObjectQuery<Product>
.Include
ist für EF nicht Linq2Sql, Sekunde - brauchen Sie nicht, um es einzufügen, wenn die Einstellung Bedingung für die Abfrage, jedoch müssen Sie rufenLoadWith
für Linq2Sql Abfragen, um zu eifrig laden zusammen mit Produkten der KategorieDiese werden Sie wieder ein IQueryable mit der gefilterten Ergebnisse.
Basierend auf Vittore Antwort unten, wenn es eine foreign key-Einschränkungen, hier die richtige version:
Verknüpfung der Produkt-und Kategorien-Tabellen auf
category_id
und dann mit einemwhere
heraus zu filternproduct_price
.