C# 显示数据集中的数据
我使用实体框架从存储过程获取数据集中的数据,现在我必须用c代码显示特定列的数据。我尝试了WriteXML,但它是xml格式的。 这是我的代码,我附上了存储过程结果的照片C# 显示数据集中的数据,c#,asp.net,stored-procedures,dataset,console-application,C#,Asp.net,Stored Procedures,Dataset,Console Application,我使用实体框架从存储过程获取数据集中的数据,现在我必须用c代码显示特定列的数据。我尝试了WriteXML,但它是xml格式的。 这是我的代码,我附上了存储过程结果的照片 DataSet myds = new DataSet(); myds = new BLRestaurant().GetMenu(); Console.WriteLine("Please select items from the menu listed:");
DataSet myds = new DataSet();
myds = new BLRestaurant().GetMenu();
Console.WriteLine("Please select items from the menu listed:");
Console.WriteLine(" Menu");
Console.WriteLine(" -----------------------------------------------------------------------------");
Console.WriteLine(" | ID | ITEM | ACTUAL PRICE | DISCOUNTED PRICE | ");
Console.WriteLine(" -----------------------------------------------------------------------------");
将为您显示数据。如果要查找更通用的内容,可以循环浏览这些表并获得如下列名:
IEnumerable<string> columns = tbl.Columns.Cast<DataColumn>().Select(x => x.ColumnName);
使用.Net时,将其输出到GridView
<asp:GridView Id="MyGridView" runat="server" />
即使您不需要GridView,也最好将数据放入DataTable,因为您可以使用以下语句对其进行操作和迭代:
foreach(DataRow dr in MyDataTable.Rows)
{
//do some stuff with the row
//find a value in a column?
string fieldText = dr["ColumnA"].Text;
}
您没有明确说明您的问题是什么。您提供了一个模糊的要求,但没有提出问题?你在问什么?我想打印数据集中的数据。但是如何?有没有任何方法可以不使用datatable直接显示数据集中的数据?@Umm-e-Habiba您如何知道在数据集中使用哪个表而不说是哪个表?@Umm-e-Habiba您需要指定一个表,就像在sqlI中执行select时指定一个表一样。我从存储过程而不是从表中获取数据,这就是我想直接从数据集中打印数据的原因。@Umm-e-Habiba所有数据都在数据集中,数据集中包含一组表。然后可以遍历表中的行,如图所示。
<asp:GridView Id="MyGridView" runat="server" />
private LoadGridView()
{
MyGridView.DataSource = GetMyData();
MyGridView.DataBind();
}
private DataTable GetMyData()
{
DataTable result = new DataTable();
SqlConnection con = new SqlConnection(SQLConn);
SqlCommand cmd = new SqlCommand("[MyStoreProcedure]", con);
cmd.CommandType = CommandType.StoredProcedure;
try
{
con.Open();
//Define parameters here
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
adapter.Fill(result);
}
catch (Exception ex)
{
//trap for errors
}
finally
{
con.Close();
con.Dispose();
cmd.Dispose();
}
return result;
}
foreach(DataRow dr in MyDataTable.Rows)
{
//do some stuff with the row
//find a value in a column?
string fieldText = dr["ColumnA"].Text;
}