Usuário com melhor resposta
LINQ - indentifier expected

Pergunta
-
Olá boa tarde,
Sou iniciante no LINQ e estou tentado efetuar uma seleção not in em dois datatables, pesquisei em vários lugares e me parece que a solução seria a seguinte.
From a In dt Where !(From b In dtRegistros Select b) Select a
porém no VS fica uma marcação entre o ! e o ( indicando " indentifier expected", não consigo encontrar uma solução para isso.
Respostas
-
Mauro,
Segue exemplo:
Public Class Form3 Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim dt1 As New DataTable dt1.Columns.Add("col1", Type.GetType("System.String")) dt1.Rows.Add("abc") dt1.Rows.Add("def") Dim dt2 As New DataTable dt2.Columns.Add("col1") dt2.Rows.Add("def") dt2.Rows.Add("ghi") Dim result = From rowDt1 In dt1.Rows _ Where Not (From rowDt2 In dt2.Rows _ Select rowDt2("col1")).Contains(rowDt1("col1")) MessageBox.Show(result.Count()) End Sub End Class
André Alves de Lima
Visite o meu site: http://andrealveslima.spaces.live.com
Me siga no Twitter: @andrealveslima- Marcado como Resposta Mauro Couto quinta-feira, 22 de julho de 2010 18:06
-
Mauro, só para constar
! é a simbologia de "Not" para C#, no seu caso VB.NET é como o Andre disse acima
What would Brian Boitano do ?
((2B || !2B) is Question) ? Se não da certo como voce esta fazendo... Tente fazer de um jeito totalmente diferente....- Marcado como Resposta Mauro Couto quinta-feira, 22 de julho de 2010 18:06
Todas as Respostas
-
Mauro,
Segue exemplo:
Public Class Form3 Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim dt1 As New DataTable dt1.Columns.Add("col1", Type.GetType("System.String")) dt1.Rows.Add("abc") dt1.Rows.Add("def") Dim dt2 As New DataTable dt2.Columns.Add("col1") dt2.Rows.Add("def") dt2.Rows.Add("ghi") Dim result = From rowDt1 In dt1.Rows _ Where Not (From rowDt2 In dt2.Rows _ Select rowDt2("col1")).Contains(rowDt1("col1")) MessageBox.Show(result.Count()) End Sub End Class
André Alves de Lima
Visite o meu site: http://andrealveslima.spaces.live.com
Me siga no Twitter: @andrealveslima- Marcado como Resposta Mauro Couto quinta-feira, 22 de julho de 2010 18:06
-
Mauro, só para constar
! é a simbologia de "Not" para C#, no seu caso VB.NET é como o Andre disse acima
What would Brian Boitano do ?
((2B || !2B) is Question) ? Se não da certo como voce esta fazendo... Tente fazer de um jeito totalmente diferente....- Marcado como Resposta Mauro Couto quinta-feira, 22 de julho de 2010 18:06