3 つのテーブルを 1 つの配列に取り込もうとしています。ストアドプロシージャは機能します。最初の追加行で、オブジェクト参照がオブジェクトのインスタンスに設定されていないというエラーが表示されます。これを行う方法はありますか?これについて完全に間違っているかどうかはわかりません。ありがとうございます。
public static ArrayList SearchContacts(string search)
{
Contacts C = new Contacts();
ContactsAddress D= new ContactsAddress();
ContactPhone E = new ContactPhone();
ArrayList ret = new ArrayList();
SqlDataSource ds = Database.GetDataSource();
ds.SelectCommand="_ContactSearch";
ds.SelectCommandType=SqlDataSourceCommandType.StoredProcedure;
ds.SelectParameters.Add("FirstName", DbType.String,C.FirstName.ToString());
ds.SelectParameters.Add("LastName", DbType.String,C.LastName.ToString());
ds.SelectParameters.Add("EmailAddress", DbType.String,C.EmailAddress.ToString());
ds.SelectParameters.Add("PostalCode", DbType.String,D.PostalCode.ToString());
ds.SelectParameters.Add("PhoneNumber", DbType.String,E.PhoneNumber.ToString());
IEnumerator i = ds.Select(System.Web.UI.DataSourceSelectArguments.Empty).GetEnumerator();
while (i.MoveNext())
{
DataRowView d = (DataRowView)i.Current;
fillSearch(d, ref C,ref D, ref E);
ret.Add(C);
ret.Add(D);
ret.Add(E);
}
return ret;
}