none
Uso de procedimiento almacendado desde Entities RRS feed

  • Pregunta

  • Estoy comenzando a usar Entities con VB 2008.

    He creado una Entity llamada Pedidos.edmx, he incluido un procedimiento llamado "SelectPedidosMaestroDgv"

     

     Dim pedidosContext As New LAEntities1


        Private Sub frmPedidosMaestro_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
         
            'GeneralBindingSource.DataSource = CrearTabla("SelectPedidosMaestroDgv")
            GeneralBindingSource.DataSource = pedidosContext.PedidosMaestro.Name = "SelectPedidosMaestroDgv"

            dgv.DataSource = GeneralBindingSource
              End Sub

     Public Function CrearTabla(ByVal strQuery As String) As DataTable
            Using Cnn As New SqlConnection
                Cnn.ConnectionString = s
                Try
                    Dim da As New SqlDataAdapter(strQuery, Cnn)
                    Dim dt As New DataTable
                    da.Fill(dt)
                    Return dt
                Catch ex As Exception
                    MsgBox("Problema en BD.CrearTabla" & vbCrLf & ex.Message)
                End Try
            End Using
        End Function

     

     

    Quiero asignar ese procedimiento como Datasource, pero no se como llamarlo usando el pedidosContex creado, en lugar de hacerlo con la function CrearTabla

     

    ¿Podeis ayudarme?

    Gracias.

     


    Miguel Angel Martinez correomam@gmail.com
    domingo, 2 de mayo de 2010 7:20

Todas las respuestas

  • hola

    mira este ejemplo

    ADO.NET Entity Framework Tutorial and Basics

    veras qeu crea el contexto

    publishContext = new PublishingCompanyEntities();

    como tu lo ahs realziado en

    Dim pedidosContext As New LAEntities1

    y luego simplemente bindea al control


    authorList.DataSource = publishContext.Author;
    authorList.DisplayMember = "FirstName";

    recuperando ls lista de autores

     

    prueba en tu caso de simular lo mismo del contexto pedidosContext pon un punto y ve si alli esta al entidad que queres cargar en el datasource de la grilla "dgv.DataSource"

    saludos

     


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    domingo, 2 de mayo de 2010 14:45
  • Leandro:

    Precisamente estoy usando como guia el mismo ejemplo que propones, y efectivamente puedo hacer:

            GeneralBindingSource.DataSource = pedidosContext.PedidosMaestro

    y consigo bindear la tabla PedidosMaestro como DataSource, el problema es que yo quiero usar como DataSource una consulta que contiene solamente algunos campos, y para eso necesito usar el procedimiento almacenado.

     

     


    Miguel Angel Martinez correomam@gmail.com
    domingo, 2 de mayo de 2010 16:02
  • hola

    entonces deberias mapear la entidad al stored procedure

    ADO.Net Entity Framework Tools: Stored Procedures

    has realizado ese mapeo de la entidad al procedure ?

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    domingo, 2 de mayo de 2010 16:48