Nombre de la tabla de DataSet de un procedimiento almacenado
Pregunta
Estoy usando un procedimiento almacenado para llenar un DataSet. Lo que necesito hacer es forzar el nombre de la DataTable que se crea cuando se llena. Hay varias tablas devueltas desde el procedimiento almacenado. La última tabla es la que necesito para asegurarme de que tenga un nombre específico cuando se devuelva. Se crea mediante la devolución de un valor de una variable y no se extrae de ninguna tabla.
SELECCIONE @Phone como My_800Number
¿Cómo puedo hacer esta devolución como tabla llamada " D1Header " ;?
Solución
No hay una forma nativa de ADO.NET para hacerlo; ADO.Net asigna un nombre generado con un número de secuencia, según esto
Puede solucionarlo ... si dice que necesita la última tabla con un nombre específico, puede hacerlo:
if (ds.Tables.Count > 0) {
ds.Tables[ds.Tables.Count - 1].TableName = "name";
}
Otros consejos
Podría usar una enumeración de los nombres de tabla y la referencia en su referencia de tabla en lugar de la tabla misma.
ds.tables (myEnum.Contacts) .rows?