У меня есть следующие дозвуковые сущностиПомощь с Subsonic3 ActiveRecord LINQ запрос
TInvoiceHeader
TAccountAssociation
Как можно достичь следующих в LINQ (дозвуковой)
SELECT * from TInvoiceHeader
WHERE custid IN
(SELECT custid FROM TAccountAssociation
WHERE username = 'a')
мне нужно, чтобы связать результаты в GridView.
Обновление: Я попытался
Dim accounts As List(Of TAccountAssociation) = _
TAccountAssociation.Find(Function(x) x.UserName = "a")
GridView1.DataSource = TInvoiceHeader.All() _
.Where(Function(x) accounts.Contains(x.custID))
GridView1.DataBind()
Но я получаю ошибку "... вложенная функция Dows не имеют ту же сигнатуру, как делегат"
Update:
Я действительно не волнуюсь прибудете это ...
why does this work
Dim accounts() As String = {"N12345", "A12455"}
GridView1.DataSource = TInvoiceHeader.All(). _
Where(Function(c) accounts.Contains(c.custID))
GridView1.DataBind()
Но это не
Dim accounts = TAccountAssociation.Find(Function(x) x.UserName = "a")
GridView1.DataSource = TInvoiceHeader.All(). _
Where(Function(c) accounts.Contains(c.custID))
GridView1.DataBind()
Update
Я закончил с использованием текучего Query
GridView1.DataSource = New customerWEBDB().Select.From(Of TInvoiceHeader)_
.Where("custID") _
.In(New customerWEBDB().SelectColumns("custID") _
.From(Of TAccountAssociation) _
.Where("UserName").IsEqualTo("aaa")) _
.ExecuteTypedList(Of TInvoiceHeader)()
GridView1.DataBind()
Надеюсь, кто покажет мне что-то лучше.
Вы используете шаблоны ActiveRecord или Repository для своих объектов? – Rony
Я использую ActiveRecord. –
Я просто не могу понять это ... кто-нибудь? –