私は2つのクラスを持っています
Public class Foo
{
int Id {get;set;}
Email DefaultEmail {get;set;}
}
Public class Email
{
string main {get;set;}
string backup {get;set;}
string recover {get;set;}
}
Public string GetEmail(EnType)
{
switch(EnType)
{
Case EnType.Type1:
return this.main;
// others condition....
}
}
コンポーネント マップを使用して Foo を Email にマップします。必要な電子メールは毎回 1 つだけです。
私が選ぶとき
Session.Query.select(x => x.email.getEmail(EnType.Type1))
生成されるSQLは
select emailType1, emailType2,.... From Foo
私はただ期待している間
select emailType1 From Foo