3

タイプ辞書を剣道コンボボックスにバインドする方法は?

@(Html.Kendo().ComboBox()
.Name("Division")
.DataTextField("Key")
.DataValueField("Value")
.BindTo(Model.Filter.DivisionList)
)

Model.Filter.DivisionListはディクショナリです上記のコードでは、「ディクショナリのシリアル化/逆シリアル化ではサポートされていません。キーは文字列またはオブジェクトである必要があります」というエラーがあります。

この問題の簡単な回避策はありますか?

4

2 に答える 2

6

これは私のために働いた:

.Name("PaymentTerm"
).BindTo(
   new SelectList(Model.CreditCollectionInfo.PaymentTerms.Select(
         s => new {
             Key = s.Key, 
             Value = s.Value
         }
), "Key", "Value")
于 2013-01-09T15:31:38.127 に答える
3

にバインドIEnumerable<SelectListItem> できます。取得するには、次の簡単なクエリを使用できます。

var selectList = Model.Filter.DivisionList.Select(c=>new SelectListItem{Text = c.Value, Value = c.Key.ToString()});
于 2012-10-16T11:00:04.617 に答える