Usuário com melhor resposta
Acesso a banco com LINQ + VB.Net

Pergunta
-
O código abaixo é uma evolução de uma dúvida que postei anteriormente sobre como comparar o usuário e a senha digitados pelo usuário com o banco de dados. Desta vez estou fazendo utilizando o LINQ, e gostaria da ajuda de vocês para ver se está errado ou estou no caminho certo.
Segue o código:
Protected Sub cmdLogin_Click(sender As Object, e As EventArgs) Handles cmdLogin.Click 'busca o usuário no banco para validar Dim contexto As New ContextoContext Dim usr = From usuario In contexto.Usuarios _ Select usuario Where usuario.Usuario = txtUsuario.Text _ Or usuario.Usuario = Session("usuario").ToString End Sub
Atenciosamente, Marcio Nogueira Cardoso Pinto.
Respostas
-
Olá Marcio, eu faria direfente criaria um método e passaria o usuario como string, o que esse bloco de código faz é SELECT USUARIO FROM USUARIOS WHERE usuario = txtusuario.Text Or usuario = Session("usuario").ToString, faça encapsulado em um método !
Public Sub EncontraUsuario(ByVal txt As String,ByVal user As String) Dim contexto as new ContextoContext() Dim usr = From usuario In contexto.Usuarios Select usuario Where usuario.Usuario = txt Or usuario.Usuario = user End Sub 'Eu faria assim Public Sub EncontraUsuario(ByVal _usuario As String) If usuario is Nothing Then 'se string for nula sai do sub ExitSub EndSub Dim contexto as new ContextoContext() Dim sql = (From u in contexto.Usuario Select u.usuario Where u.usuario = _usuario ).FirstOrDefault() If sql is Nothing Then ' usuario nao encontrado Else 'usuario encontrado End If End Sub
Mas é apenas uma maneira, pois vc pode ter usuario diferente na textbox e na session ?
- Marcado como Resposta Marcio_Nogueira terça-feira, 13 de maio de 2014 12:33
Todas as Respostas
-
Olá Marcio, eu faria direfente criaria um método e passaria o usuario como string, o que esse bloco de código faz é SELECT USUARIO FROM USUARIOS WHERE usuario = txtusuario.Text Or usuario = Session("usuario").ToString, faça encapsulado em um método !
Public Sub EncontraUsuario(ByVal txt As String,ByVal user As String) Dim contexto as new ContextoContext() Dim usr = From usuario In contexto.Usuarios Select usuario Where usuario.Usuario = txt Or usuario.Usuario = user End Sub 'Eu faria assim Public Sub EncontraUsuario(ByVal _usuario As String) If usuario is Nothing Then 'se string for nula sai do sub ExitSub EndSub Dim contexto as new ContextoContext() Dim sql = (From u in contexto.Usuario Select u.usuario Where u.usuario = _usuario ).FirstOrDefault() If sql is Nothing Then ' usuario nao encontrado Else 'usuario encontrado End If End Sub
Mas é apenas uma maneira, pois vc pode ter usuario diferente na textbox e na session ?
- Marcado como Resposta Marcio_Nogueira terça-feira, 13 de maio de 2014 12:33
-