3

正しい方向へのプッシュを探して、これをどこから始めればよいかわかりません。私はC#を使用しています。ユーザーに 3 つの質問を表示する必要がありますが、問題は、これらの質問をランダムに選択して、ページの読み込みごとに表示する必要があることです。あなたのソリューションが最も簡単な方法であると判断した場合は、MS SQL を使用できます。

一度に 3 つ表示してランダムに選択する 10 の質問のリストがあります。これを行う最善の方法は何ですか?

現在、このように設定されています..

ここに画像の説明を入力

   <p> <label class="checkbox"><asp:CheckBox ID="QuesChk1" Value="1" Text="What street do they live on?"
        runat="server" /></label></p>
     <p> <label class="checkbox"><asp:CheckBox ID="QuesChk2" Value="2" Text="What is their middle name?"
        runat="server" /></label></p>
     <p> <label class="checkbox"><asp:CheckBox ID="QuesChk3" Value="3" Text="What branch do they visit the most?"
        runat="server" /></label></p>
    <asp:Button ID="Button1" OnClick="Next_Click" runat="server" Text="Next" />
4

6 に答える 6

0

あなたが3つのランダムな繰り返されない質問を得ることに非常にこだわっているなら、あなたは試すことができます:

質問があるSQLテーブルでは、IDフィールドを関連付ける必要があります.IDフィールドを作成しない場合は、10の質問があるため、IDは1〜10になります.

これで、C# コードで次を取得するメソッドを作成できます。

Random random = new Random();
int randomNumber = random.Next(1, 10);

ここで、SQL クエリ " Select * from tab where ID = randomNumer" を作成します (最初の質問用)。

randomNumber を一時配列または List に保存し (目的を比較するため)、同じメソッドを再度呼び出して既存の数値と比較します ( Contains()bool を返すメソッドを使用して簡単に実行できます) 類似していない場合は、配列に追加しますこの質問の公開を続けます。

配列/リストのサイズを追跡する必要があります (< 3 の場合は続行し、それ以外の場合は終了します)。

これはあなたのために訓練する必要があります.私は同じアルゴリズムを使用して会社の入学試験を作成しましたが、残念ながらコードを見つけることができません.

幸運を

于 2013-04-09T14:06:43.413 に答える