2

嘿那里,

这是我在stackoverflow中的第一个问题,希望你能帮助我。

我在 linq 查询中填写了以下属性:

FieldLabel = (currentLanguage == "de" ? forum.language.German :
         currentLanguage == "fr" ? forum.language.French :
         currentLanguage == "en" ? forum.language.English :
         forum.language.English)

而且我需要这是通用的,因为我的“论坛”实体可以是其他东西,例如具有某些语言列(德语,法语,英语)的“帖子”等。我想要一些接收实体类型的动态方法,例如“论坛”或“帖子”或其他任何具有列语言的内容,并根据链接的 If 返回选择的列。

我该如何解决这个问题?

4

1 回答 1

-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);
}
于 2013-03-28T13:00:21.043 回答