public class TimeZone
{
public int Id { get; set; }
public string DisplayName{ get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我在其他一些课程中:
var gmtList = new SelectList(
repository.GetSystemTimeZones(),
"Id",
"DisplayName");
Run Code Online (Sandbox Code Playgroud)
注意:System.Web.Mvc.SelectList
我不喜欢用"Id"和"DisplayName"来编写属性名称.稍后,可能属性名称将更改,编译器将不会检测到此错误.C#如何在字符串中获取属性名称?
更新1
在Christian Hayter的帮助下,我可以使用:
var tz = new TimeZone();
var gmtList = new SelectList(
repository.GetSystemTimeZones(),
NameOf(() => tz.Id),
NameOf(() => tz.TranslatedName));
Run Code Online (Sandbox Code Playgroud)
要么
var gmtList = new SelectList(
repository.GetSystemTimeZones(),
NameOf(() => new TimeZone().Id),
NameOf(() => new TimeZone().TranslatedName));
Run Code Online (Sandbox Code Playgroud)
如果有人有其他想法而无需创建新对象.随意分享:)谢谢.
c# ×1