我有这样的方法:LINQ动态情况
private string GetLanguage(String currentLanguage, dynamic entity)
{
return (currentLanguage == "de" ? entity.language.German :
currentLanguage == "fr" ? entity.language.French :
currentLanguage == "en" ? entity.language.English :
entity.language.English);
}
我需要这个返回做这样的事情的SQL语句的LINQ表达式:
select (case when [french] is null then [english] else [french] end) as language
from
我怎样才能做到这一点?
韩国社交协会
编辑:
更具体:
我有这样的事情:
myId = 1;
from objects in context.Objects
where objects.Id== myId
select new
{
MyObject = new Models.MyObjects()
{
Id = objects.ScrId,
Title = LanguageFactory.GetLabelLanguage(objects.Labels)
}
}).FirstOrDefault();
而且MyObject.Title必须有明确的语言(英语,法文,荷兰文等)。 在SQL我下定决心,通过做这样的事情:
select id, (case when [french] is null then [english] else [french] end) as language
from table
我如何做一个LINQ表达式可以被转换为类似于上面的SQL查询?
你想让GetLanguage方法返回一个linq表达式吗? – bas
我可以问问如果你知道当前的语言,你为什么试图产生这样的SQL。 –
是的,这将用于主查询中,具有以下内容: 从表 – user2219609