0

だから、これが私が使ったHtmlヘルパーです:

        @Html.DropDownList("FK_gestCompte", User.Identity.Name)

これにより、このhtmlの結果が得られます。

 <select id="FK_gestCompte" name="FK_gestCompte"><option value="">user3</option>
 <option value="1">user1</option>
 <option value="2">admin</option>
 <option value="3">user2</option>
 <option value="5">user3</option>
 </select>

このように最初の行を設定する方法がわかりません:

 <select id="FK_gestCompte" name="FK_gestCompte"><option value="5">user3</option>

私が作成した選択リストは、コントローラー内でそのように作成されています。

        ViewBag.FK_gestCompte = New SelectList(db.my_aspnet_users, "id", "Name")

何か案が?


これがParvSharmaによって与えられた解決策です:

コントローラー:

        Dim ident As Integer = (From a In db.my_aspnet_users
                             Where a.name = User.Identity.Name
                             Select a.id).FirstOrDefault()
        ViewBag.FK_gestCompte = New SelectList(db.my_aspnet_users, "id", "Name", ident)

見る :

        @Html.DropDownList("FK_gestCompte")
4

3 に答える 3

2
 its possible in this way

 @Html.DropDownListFor(model => model.UserType,
                       new SelectList(new List<Tuple<string, string>>
                       {
                         new Tuple<string, string>("1", "User"),                    
                          new Tuple<string, string>("2", "Admin"),                    
                        }, "Item1", "Item2", "2"))

  Admin will be selected by default as we have set "2" as a selected value
于 2012-05-04T07:51:03.320 に答える
2

使用しているメソッドの署名を使用します

  @Html.DropDownList("FK_gestCompte", User.Identity.Name)

このコレクションを埋めるときにUser.Identity.Name、そのアイテムのプロパティをSelectListItem
使用して、任意のアイテムを選択されたアイテムとして設定できます。Selected

于 2012-05-04T07:53:39.977 に答える
1

並べ替えを追加してみてください。

それで、db.my_aspnet_users.OrderByDescending(i => i.id)

編集:最初のオプションが<option value="">user3</option>

「user3」はデータソースに2回表示されますか?

編集2:

これを試して:

var users = db.my_aspnet_users.ToList();

var userSelectList = users.OrderBy(i => i.name)
                      .Select(thisUser =>
                          new SelectListItem
                          {
                              Selected = (thisUser.name == User.Identity.Name),
                              Text = thisUser.name,
                              Value = thisUser.id.ToString()
                          });

次に、ヘルパーを次のように置き換えます

@Html.DropDownList("userSelectList ") 
于 2012-05-04T07:47:37.450 に答える