- - PR -
【C#】クラスを多次元配列にすることは可能ですか?
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2007-10-01 20:47
VS2005で開発をしております。
データベースにおいて、2つのカラムをキーとするテーブルから引っ張ってきた値を、VBのプロパティのように、予め作成しておいたクラスを2次元配列にして、それぞれの値に代入して使おうとしているのですが、配列として作った(つもりの)クラスを呼び出す際に「オブジェクト参照がオブジェクトインスタンスに設定されていません」のエラーが出てしまいます。VBのプロパティのように使うことは出来ないのでしょうか?↓↓↓がソースです。 ------------------------------------ public partial class frmHoge : Form { private clsHoge[,] lstHoge = new clsHoge[10, 10]; ---------省略------------ private void frm_Hoge_Shown(object sender, EventArgs e) { using (SqlConnection objConn = new SqlConnection(SQLコネクション用の文字列)) { try { SqlDataReader objReader = ストアドを実行するメソッド; // 結果セット<>0件なら、値を読み込みます if (objReader.HasRows == true) { int iID1; // キー1 int iID2; // キー2 while (objReader.Read()) { iID1 = objReader.GetInt32(0); iID2 = objReader.GetInt32(1); lstHoge[iID1, iID2].Title = objReader.GetString(2);ToString(); ←ここでエラーになります } // DataReaderを閉じます objReader.Dispose(); } } catch { ---------省略------------ class clsHoge { private String strTitle; public String Title { get { return strTitle; } set { this.strTitle = value; } } ---------省略------------ ------------------------------------ ご教授のほど宜しくお願いします | ||||
|
投稿日時: 2007-10-01 21:45
配列は作ってあるけど、インスタンスは作られていないから。 | ||||
|
投稿日時: 2007-10-02 08:12
ありがとうございます。
DataReaderを読み込む際にインスタンスを代入するようにコードを設定したら、動きました。 |
1