必要となったので個別に記載。
Value と Text の値はリフレクションで取得し設定する。
private static SelectListItem ToSelectList( object item, string text, string value) { // 引数が null の場合はエラーとする。 if (null == item) throw new ArgumentNullException("items"); var type = item.GetType(); var valueProperty = type.GetProperty(value); var textProperty = type.GetProperty(text); if (null == valueProperty || null == textProperty) throw new ArgumentException(); return new SelectListItem() { Value = Convert.ToString(valueProperty.GetValue(item)), Text = Convert.ToString(textProperty.GetValue(item)) }; }