Red de conocimiento informático - Material del sitio web - ¿Cómo usar C# para obtener el nombre de la columna en la base de datos y mostrarlo en la cuadrícula de datos?

¿Cómo usar C# para obtener el nombre de la columna en la base de datos y mostrarlo en la cuadrícula de datos?

Código de control DataGrid en .aspx: (Lo hice antes, sin cambiar las filas y columnas, compruébalo tú mismo, es bastante sencillo cambiarlo)

lt; cuadrícula de datos

id="ProductItemList"

runat="servidor"

BorderColor="#E0E0E0"

Ancho="80"

AutoGenerateColumns="False"

BorderStyle="Solid"

OnDeleteCommand="Delete"

DataKeyField="ProductId"

AllowSorting="True"

OnSortCommand="Sort"gt;

lt;ItemStyle HorizontalAlign="Center"gt;lt;/ItemStylegt;

lt;HeaderStyle

HorizontalAlign="Centro"

Altura="20px"

BackColor="#ECEDF0"gt;

lt;/HeaderStylegt;

lt;Columnsgt;

lt;asp: BoundColumn

DataField="ProductId"

HeaderText = "Id. del producto"

SortExpression="ProductId"gt;

lt;/asp:BoundColumngt;

lt;asp:BoundColumn

DataField="SortName"

HeaderText="Ordenar nombre"

SortExpression="SortName"gt;

lt;/asp:BoundColumngt;

lt; asp: BoundColumn

DataField="ProductName"

HeaderText="Nombre del producto"

SortExpression="ProductName"gt;

p>

lt;/asp:BoundColumngt;

lt;asp:BoundColumn

DataField="ProductPrice"

HeaderText ="Precio del producto"

DataFormatString="{0:C}"

SortExpression="ProductPrice"gt;

lt;/asp:BoundColumngt;

lt; asp: TemplateColumn HeaderText="Editar"gt;

lt; ItemStyle

HorizontalAlign="Centro"

Ancho=" 100px"

CssClass="grid-edit-column"gt;

lt;/ItemSt

ylegt;

lt;ItemTemplategt;

lt;a

href="ProductUpdate.aspx?ProductId=lt;#DataBinder.Eval(Container.DataItem, "

ProductId")gt;"gt;

lt;img src="../images/icon-pencil.gif" border="0"gt;

lt;/agt;

lt;img src="../images/shim.gif" width="6"gt;

lt;asp:imagebutton

Runat="servidor"

ImageUrl="../images/icon-delete.gif"

CommandName="Eliminar"

CausesValidation="False"

ID="CatDeleteButton"gt;

lt;/asp:imagebuttongt;

lt;/ItemTemplategt;

lt;/asp:TemplateColumngt;

lt;/Columnsgt;

lt;/asp:datagridgt;

Control en .aspx.cs , declaración de variables y definición de métodos

protected System.Web.UI.WebControls.DataGrid ProductItemList;

protected iProduct.Business.Product myProduct = new

iProduct. Business.Product();

cadena protegida SortField;

Page_Load vacío privado (remitente del objeto, System.EventArgs e)

{

if (!IsPostBack)

{

if (SortField == "")

{

SortField = "ProductId ";

}

BindProduct();

}

}

vacío privado BindProduct()

{

DataSet ds = myProduct.GetAllWithSortName();

DataTable dt = ds.Tables["iproduct_product"];

DataView dv = nuevo DataView(dt);

dv.Sort = SortField;

ProductItemList.DataSource = dv;

ProductItemList.DataBind();

}

//Eliminar registros

public void Eliminar(Remitente del objeto, DataGridCommandEventArgs e)

<

p>{

( ProductItemList.DataKeys[(int)e.Item.ItemIndex]

myProduct.Delete()

BindProduct();

}

//Método de clasificación de datos

protected void Sort(Remitente del objeto, DataGridSortCommandEventArgs e)

{

SortField = (cadena)e.SortExpression;

BindProduct();

}