那里,
这是我在stackoverflow中的第一个问题,希望你能帮助我。
我在linq查询中填写了以下属性:
FieldLabel = (currentLanguage == "de" ? forum.language.German :
currentLanguage == "fr" ? forum.language.French :
currentLanguage == "en" ? forum.language.English :
forum.language.English)
我需要这是通用的,因为我的“论坛”实体可以是其他类似“post”的东西,它有一些语言列(德语,法语,英语)等。 我想要一些接收实体类型的动态方法,比如“forum”或“post”或其他任何具有列语言的方法,并根据链接的If返回选择列。
我该如何解决这个问题?
答案 0 :(得分:-1)
如果您使用的是.NET 4.0或更高版本且所有实体都具有“语言”属性,则可以使用dynamic关键字:
private dynamic GetLanguage(String currentLanguage, dynamic entity)
{
return (currentLanguage == "de" ? entity.language.German :
currentLanguage == "fr" ? entity.language.French :
currentLanguage == "en" ? entity.language.English :
entity.language.English);
}