none
concatenar 3 campos con EF RRS feed

  • Pregunta

  • Hola aqui nuevamente pues necesito concatenar 3 campos para utilizalo  en mi combo 

     Public Function GetHorario() As IQueryable
            Dim oc As New BDAsistenciaEntities
            Try
                Dim result = From be In oc.Horario
    Select be.Id_Horario, be.Dia, be.HoraInico, be.HoraFin, HOR = (be.Dia + " " + be.HoraInico + " " + be.HoraFin)
                Return result
            Catch ex As Exception
                Throw
            End Try
        End Function

    HOR = (be.Dia + " " + be.HoraInico + " " + be.HoraFin)

    quiero lograr esa concatenación, no me marca error pero ya en el llama de mi datatexfield  de mi combo , pues no resulta la consulta

    Saludos y gracias por la respuesta



    "SI LOGRAS CONCENTRARTE EL MUNDO DEJARA DE EXISTIR"

    jueves, 2 de mayo de 2013 23:23

Todas las respuestas

  • Hola que sucede cuando lo quieres mostrar en el combo? aparece vacío?

    Si se solucionó tu consulta no olvides marcar la respuesta. Saludos


    jueves, 2 de mayo de 2013 23:30
  • hola

    porque no creas una propiedad la cual marcas como no perssitente y de solo lectura para deolver este dato

    no deberias devolver un IQueryable de respuesta, deberias retornar uan entidad que tu defines

    Public Class Horarios

       Public Property Id As Integer

       Public Property Dia As Integer

       Public Property HoraInicio As Integer

       Public Property HoraFin As Integer

       Public Property HOR As String

          Get

               Return Me.Dia + " " + Me.HoraInico + " " + Me.HoraFin

          End Get

       End Property

    End Class

    y la defines

    Dim result = From be In oc.Horario _

                          Select New Horarios() With { .Id = be.Id_Horario, .Dia = be.Dia, ... }

    o sea crea una clase que devolver

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    jueves, 2 de mayo de 2013 23:33
  • JOSE BARBA SIMPLEMENTE APARECE EL DATO DEL DATAVALUEFIELD

    "SI LOGRAS CONCENTRARTE EL MUNDO DEJARA DE EXISTIR"

    jueves, 2 de mayo de 2013 23:56
  • Hola leandro :

    dices no deberias devolver un IQueryable de respuesta y me dices que cree una clase

    "es asi como se define???" bueno si es asi me marco error  en esta parte:

       Public Property HOR As String

          Get

               Return Me.Dia + " " + Me.HoraInico + " " + Me.HoraFin

          End Get

       End Property

    por otro lado lo que me comentas sobre el  IQueryable tengo una duda 

    pues estoy utilizando EF en NCAPAS .net 4.0

    en mi capa de datos yo utilizo la funcion que mostre arriba , hace mucho cuando mostré un código me hiciste la misma observación

    pues concretamente la pregunta es ¿debo utilizar el IQueryable?

    QUE FUNCION ES LA CORRECTA 

    Public Function GetEspecialidad() As IQueryable

    Public Function GetEspecialidadE() As List(Of Especialidad)

    Public Class EspecialidadDAO Public Function GetEspecialidad() As IQueryable Dim oc As New CitasMedicasEntities Try Dim result = From item In oc.Especialidad Select ID = item.IdEspecialidad, ESPECIALIDAD = item.DesEspecialidad, ESTADO = item.Estado Return result Catch ex As Exception Throw End Try End Function

    Public Function GetEspecialidadE() As List(Of Especialidad) Dim oc As New CitasMedicasEntities Dim result As List(Of Especialidad) = (From item In oc.Especialidad Where item.Estado = True Select item).ToList() Return result End Function Public Sub Insert(ByVal BE As Especialidad) Try Using oc As New CitasMedicasEntities oc.Especialidad.AddObject(BE) oc.SaveChanges() End Using Catch ex As Exception End Try End Sub Public Sub Update(ByVal BE As Especialidad) Try Using oc As New CitasMedicasEntities oc.Especialidad.Attach(BE) oc.ObjectStateManager.ChangeObjectState(BE, EntityState.Modified) oc.SaveChanges() End Using Catch ex As Exception End Try End Sub End Class



    "SI LOGRAS CONCENTRARTE EL MUNDO DEJARA DE EXISTIR"

    viernes, 3 de mayo de 2013 0:40
  • "es asi como se define???" bueno si es asi me marco error  en esta parte:

    y cual es el error ?

    pues concretamente la pregunta es ¿debo utilizar el IQueryable?

    si estas modelando en capas no

    ese objeto sigue siendo de base de datos, es mas si devuelves esto aun ni siquiera se ejecuto la query, cuando en una apcliacion en capas deberias desde la capa de datos devolver entidadfes desconectadas que no esten relacionadas a los datos

    con tu logica se esta ejecutando la query recien en la capa de negocio

    es ams puede validarlo si tiene un sql server full podrias usar el Sql Server Profiler para monitorear la actividad de la db y valida en que momento de tu codigo se lanza la consulta, vas a ver que lo hace desde la capa de negocio, cuando esto nucna deberia ser asi

    tu metodo GetEspecialidad() debera devolver un objeto Especialidad

        Public Function GetEspecialidad() As Especialidad

       End Function

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    viernes, 3 de mayo de 2013 6:58