私の .aspx ページには次のものがあります。
<asp:GridView ID="Table1" runat="server" AutoGenerateColumns="False" BorderColor="Black" OnRowCreated="Table1_RowCreated" OnRowDataBound="Table1_RowDataBound" CellPadding="3" CellSpacing="0" DataSourceID="Table1DataSrc" DataKeyNames="Field1">
<Columns>
<asp:BoundField DataField="Field1" HeaderText="Field1" SortExpression="Field1">
<ItemStyle HorizontalAlign="Left" Font-Size="8" Wrap="false" />
<HeaderStyle CssClass="header" Font-Size="8" />
</asp:BoundField>
</Columns>
</asp:GridView>
gridview には、いくつかのフィールドをロードする DataSource があります。私の C# コード ビハインドには、LINQ クエリを実行してストアド プロシージャを処理する次の関数があります (他のデータソースとは異なるサーバー上)。
private void RenderTables()
{
SqlDataAdapter adapter = new SqlDataAdapter();
DataTable dt = new DataTable();
using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString))
{
conn.Open();
SqlCommand cmd = new SqlCommand("sp_special", conn);
cmd.CommandType = System.Data.CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@AmIY", "Y");
adapter.SelectCommand = cmd;
adapter.Fill(dt);
adapter.Dispose();
conn.Close();
}
var enumvar = dt.AsEnumerable();
var query = from x in enumvar
orderby x.Field<string>(3)
select new
{
Field3 = x.Field<string>(3),
Field4 = x.Field<int>(4),
};
//I do some data manipulation using LINQ, but omitted here
//do something with query.....
}
新しい列 Field3 と Field4 を Gridview に追加し、これらの新しいレコードをバインドするにはどうすればよいですか? どちらのサーバーの一時テーブルにも何も保存したくない