別のクラス内に GridView を返すメソッドがありますが、何らかの理由でデータが表示されません。さらに調査した結果、Gridview には正しいデータが割り当てられているのに表示されないことがわかりました。メインクラス内でコードを実行すると、正常に動作します! 助けてください!
//ビニールクラス
public GridView SearchByAlbum(string AlbumName)
{
VinylComm.CommandType = CommandType.StoredProcedure;
VinylComm.CommandText = "AlbumVinylSearch";
SqlParameter VinylAlbumName;
VinylAlbumName = new SqlParameter();
VinylAlbumName.ParameterName = "@AlbumName";
VinylAlbumName.SqlDbType = SqlDbType.VarChar;
VinylAlbumName.SqlValue = AlbumName;
VinylAlbumName.Size = 50;
VinylAlbumName.Direction = ParameterDirection.Input;
VinylComm.Parameters.Add(VinylAlbumName);
GridView gv;
gv = new GridView();
VinylConn.Open();
gv.DataSource = VinylComm.ExecuteReader();
gv.DataBind();
VinylConn.Close();
return gv;
}
//メインページ
protected void Submit_Click(object sender, EventArgs e)
{
Vinyl v;
v = new Vinyl();
switch (SearchOptions.SelectedIndex)
{
case 0:
GridView1 = v.SearchByAlbum(SearchInput.Text);
break;
default:
break;
}
}
}