1

ドロップダウンリストからアカウントタイプをランダムに選択する方法を見つけようとしています。基本的に、私のWebアプリケーションでは、ユーザーはドロップダウンリストからアクティブ、非アクティブ、見込み客、または一時停止を選択します。私がやろうとしているのは、この機能をテストし、テストの実行時にメソッドにランダムに値を選択させることです。

これが理にかなっている場合、コード内の文字列値をメソッドで参照するのに苦労しています。どんな助けでも素晴らしいでしょう、そしてあなたが追加情報を必要とするならば、私に知らせてください!

これが私がこれまでに持っているものです:

   public void RandomStatusTypes()
     {
         List<string> statusTypes = new List<string> { "ACTIVE", "INACTIVE", "PROSPECT", "SUSPENDED" };
         Random randStatus = new Random();
         int index = randStatus.Next(0, 6);
         string value = statusTypes[index];
     }

コードには次のような行がStatusTyp = _Status,あり、値にランダムなステータスを割り当てることができるので、プログラムを実行するたびにランダムに値が選択されます。

ありがとうございました!

4

5 に答える 5

1

多分:

private static List<string> StatusTypes = new List<string>(){ "ACTIVE", "INACTIVE", "PROSPECT", "SUSPENDED" };
private static Random randStatus = new Random();

public string RandomStatusTypes()
{
    int index = randStatus.Next(0, StatusTypes.Count);
    return StatusTypes[index];
}

メソッド自体にランダムインスタンスを作成しないでください。それ以外の場合は、メソッドが非常に高速に呼び出されたときに同じステータスが作成されます(ループ内のfe)。フィールドを使用するか(上記のように)、ランダムを引数としてメソッドに渡す必要があります。

とにかく変更されないときに常にリストを作成するのは効果がないため、メソッドの外にもリストを移動しました。最後StatusTypes.Countに、将来リストを変更する場合でも(新しいステータスを追加する場合)、常に有効な範囲を使用するようにするために使用しました。

于 2013-02-04T13:59:39.567 に答える
0

ドロップダウンリストから値を選択するだけの場合は、SelectedIndexプロパティをランダムに変更する必要があります。

 Random randStatus = new Random();
 public void RandomStatusTypes()
 {
          ddlStatus.SelectedIndex = randStatus.Next(ddlStatus.Items.Count);
 }

これは、ドロップダウンの任意の値にランダムに変更されます。を使用していることに注意してddlStatus.Items.Countください。アイテムを追加または削除した場合でも、このコードを変更する必要はありません。

于 2013-02-04T13:56:49.403 に答える
0

DropdownListにランダムな値が必要な場合は、SelectedIndexプロパティを乱数に設定する必要があります

   public void RandomStatusTypes()
     {
         List<string> statusTypes = new List<string> { "ACTIVE", "INACTIVE", "PROSPECT", "SUSPENDED" };
         Random randStatus = new Random();
         dropList.Items.AddRange(statusTypes);
         dropList.SelectedIndex = randStatus.Next(0, 3);
     }
于 2013-02-04T13:59:56.533 に答える
0

通りすがりからこれfunctionを試してみてくださいreturns a random itemmyList

public string RandomListItem(List<string> myList)
{
    int randNo = new Random().Next(0, myList.Count());
    return myList[randNo];
}
于 2013-02-04T14:02:32.077 に答える
0

まず、のとして使用するselected valueために、そのメソッドからインデックスを返す必要があります(void =何も返さない) DropDownList

public int RandomStatusTypes()
 {
     List<string> statusTypes = new List<string> { "ACTIVE", "INACTIVE", "PROSPECT", "SUSPENDED" };
     Random randStatus = new Random();
     return randStatus.Next(0, statusTypes.Count);
 }

その後、このような場所でそのメソッドを呼び出すことができます

  var statusForDropDown= RandomStatusTypes(); 

そしてあなたに割り当てstatusForDropDownますDropDownList

     MyDropDownList.SelectedIndex=statusForDropDown;
于 2013-02-04T14:04:32.077 に答える