2011-01-05 17 views
0

ストアドプロシージャから特定の列を選択するにはどうすればいいですか?私はちょうど10列のうち2つを選択します。 アイテムと総売上高。.netからストアドプロシージャのselectステートメントを実行する方法

グリッドビューデザイナで
Dim reader As SqlDataReader 
      cmd.Parameters.AddWithValue("@yeartoget", DropDownList1.SelectedValue) 
      If RadioButtonList1.SelectedIndex = "0" Then 
       cmd.CommandText = "asofsales" 
      ElseIf RadioButtonList1.SelectedIndex = "1" Then 
       cmd.CommandText = "asofnetsales" 
      End If 

      cmd.CommandType = CommandType.StoredProcedure 
      cmd.Connection = conn 
      conn.Open() 
      reader = cmd.ExecuteReader() 
      GridView1.DataSource = reader 
      GridView1.DataBind() 
      conn.Close() 

答えて

1

希望する列を指定し、自動生成をオフにします。

<asp:GridView ID="myGridView" runat="server" AutoGenerateColumns="False" > 
     <Columns> 
      <asp:BoundField DataField="field1" HeaderText="First field to show" /> 
      <asp:BoundField DataField="field2" HeaderText="Second field to show" /> 

また、データテーブルに結果を読み取って、列を削除したくないか、それはLINQで何ができますが、表示する前にさらにデータをいじる必要がある場合を除き、それは単に行き過ぎだ可能性それは

+0

は実行時に表示される列を変更するため、唯一の方法です このようにすればどの列を表示するかを動的に変更する方法 – MyHeadHurts

+0

次に、データテーブルを読み込み、必要のない列を削除します。 myDT.Load(リーダー) myDT.Columns.Remove( "ColName1ToDelete") myDT.Columns.Remove( "ColName2ToDelete") myGridview.DataSource = myDT またはLINQでこれを行うには いくつかの異なる方法でそれを行うような何か、ちょうどあなたがよりよく慣れているかによって異なります – excalibur

0

、AutoGenerateColumnsをオフにし、その後、あなたはGridViewのにしたいん各列に追加します。 Gridview Samplesをご覧ください。

+0

です。実行時に表示される列を変更するため – MyHeadHurts

関連する問題