私のアプリケーションは 3 層アーキテクチャで構築されています。ただし、値オブジェクト クラスのデータ ソースへのドロップダウン リストが必要です。現在、データ アクセス レイヤー -> ビジネス ロジック レイヤー -> プレゼンテーション レイヤーからドロップダウンリストをデータソーシングしています。しかし、値オブジェクトからリストをデータソースしたいと考えています。したがって、私が欲しいのは、データ アクセス レイヤー -> 値オブジェクト -> ビジネス ロジック レイヤー -> プレゼンテーション レイヤー (ドロップダウン) です。値オブジェクトにデータ ソース化しようとしましたが、「無効なデータ ソースです。タイプ IListSource、IEnumerable、または IDataSource である必要があります」というエラーが表示されます。ありがとうございます!
これが私のコードです:
宗教VO
public class ReligionVO
{
private string religionCode;
public string ReligionCode
{
get { return religionCode; }
set { religionCode = value; }
}
private string religion;
public string Religion
{
get { return religion; }
set { religion = value; }
}
}
宗教DAO
public class ReligionDAO
{
private DB db = new DB();
public DataTable SelectAllReligion()
{
return db.GetData("SELECT * FROM Religions");
}
}
宗教BLO
public class ReligionBLO
{
private ReligionVO religionVO = new ReligionVO();
private ReligionDAO religionDAO = new ReligionDAO();
public DataTable SelectAllReligion()
{
return religionDAO.SelectAllReligion();
}
/* this is the code I tried to datasource to the Value Object
public ReligionVO SelectAllReligion()
{
dt = religionDAO.SelectAllReligion();
foreach (DataRow dr in dt.Rows)
{
religionVO.ReligionCode = dr["religion_code"].ToString();
religionVO.Religion = dr["religion"].ToString();
}
return religionVO;
}
*/
}
ASPX
ddlReligion.DataSource = religionBLO.SelectAllReligion();
ddlReligion.DataValueField = "religion_code";
ddlReligion.DataTextField = "religion";
ddlReligion.DataBind();
エラーメッセージのスクリーンショットは次のとおりです。