4

SQL データベースに「WEB_SEL_SECURITY_QUESTIONS」というストアド プロシージャがあり、次のようなテーブルが返されます。

SEQURITY_QUESTIONS_KEY、KEYCODE、QUESTION

上記の手順を実行して得た質問のリストを HTML 選択ボックスに入力する必要があります。

これは私が試したものです

String s = ConfigurationManager.ConnectionStrings["ConnectionString2"].ToString();
SqlConnection con = new SqlConnection(s);
con.Open();
SqlDataAdapter myAdepter = new SqlDataAdapter("WEB_SEL_SECURITY_QUESTIONS", con);
myAdepter.SelectCommand.CommandType = CommandType.StoredProcedure;
DataSet ds = new DataSet();
myAdepter.Fill(ds, "WEB_SEL_SECURITY_QUESTIONS");
String questions = ds.Tables["WEB_SEL_SECURITY_QUESTIONS"].Rows[]["QUESTION"].ToString();
securityQuestion1.DataSource = questions;
securityQuestion1.DataBind(); 

ただし、これにより、選択ボックスに 1 つのレコードのみが入力され、リスト アイテムごとに 1 文字のみ、最初のレコードのみが生成されるようにリスト アイテムが生成されます。

4

1 に答える 1

1

あなたは試すことができます:

securityQuestion1.DataSource = ds.Tables["WEB_SEL_SECURITY_QUESTIONS"];
securityQuestion1.DataTextField = "QUESTION";
securityQuestion1.DataValueField = "KEYCODE"; // Or whatever the value field needs to be.
securityQuestion1.DataBind(); 

最初の試みは、1 つの質問からその単一の値を取得し、それをデータ ソース全体として使用することでした。したがって、目的とする必要があるのは、セキュリティの質問テーブル全体をデータ ソースにして、値と表示に使用する列 (DataTextField、DataValueField) に関するヒントを与えることです。

于 2012-04-05T12:13:43.107 に答える