Aqui esta parte de una clase que hice para entre otras cosas regresar un dataset
1 - He creado una libreria y agregado una propiedad que me devuelva el dataset, aqui esta el ejemplo:
Public Class MyLibrary
'*var.privada para el dataset
Private dataSetTree As Data.DataSet
'*Propiedad que devuelve el DataSet para el arbol
Property prDataSetTree() As Data.DataSet
Get
Return dataSetTree
End Get
Set(ByVal Value As Data.DataSet)
dataSetTree = Value
End Set
End Property
2 - Metodo que realiza una consulta a una DB y regresa el dataset
Private Function ProcDataset_CS() As Data.DataSet
Dim DataSetCS2 As New DataSet
codigo...
.......
.......
Return DataSetCS2 'retornar el dataset
End Function
3- Metodo New para llamar al metodo que genera el dataset (perdon la redundacia
)
Public Sub New()
prDataSetTree = ProcDataset_CS()
End sub
4. Agregada la referencia del dll a tu proyecto, se crea la instancia :
Dim myDataSet As New myINTERFAZ.MyLibrary() '*crear instancia
mygrid.DataSource = myDataSet.prDataSetTree '*obtener DS de propiedad
mygrid.databind()
...
...
mygrid2.DataSource = myDataSet.prDataSetTree '*obtener DS de propiedad
mygrid2.databind()
...
...
mygrid3.DataSource = myDataSet.prDataSetTree '*obtener DS de propiedad
mygrid3.databind()
Este ejemplo esta en VB, el codigo en C# es muy parecido, de todos modo espero te sirva y aqui estamos.
Bye