1
Id | UserId | GoogleEnabled | FacebookEnabled | TwitterEnabled
在代码中,我要选择{provider}Enabled
值的价值列的表 - 输入枚举
enum Provider
{
Google,
Facebook,
Twitter
}
private async Task CheckSettingsAsync(ISeedSession<IDbSession> seedSession, IUserInfo user, Provider provider){
...
var userSettingsTask = seedSession
.Query<UserSettings>()
.Where(us => us.UserId == user.UserId)
.Select(us => us.GoogleEnabled) // if provider value is "Google"
.SingleAsync();
...
}
true/false
基地是否有任何模式/解决方案比创建一些switch
来选择我的价值?
没错,这个人可以作为解决办法,但我怕,如果有人创建不是来自此模板“{provider} Enabled”的列。 – demo
目前尚不清楚您的担忧。您的提供商具有“Google”,“Facebook”,“Twitter”值,并且您拥有相应的已启用列 - 可能出现什么问题? – Evk
如果你的意思是有人可能为没有“ProviderEnabled”列的枚举添加新值 - 它会抛出一个异常,但你会期望什么结果? – Evk