如何创建一个键是键是一天的字典,价值是对象的列表
我有以下对象:
public class ExchangeRate
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
[Required]
[Min(0)]
public double Value { get; set; }
[Required]
public DateTime ValidFrom { get; set; } = DateTime.Now;
[MaxLength(3)]
[Required]
public int CurrencyId { get; set; }
public virtual CurrencyDto Currency { get; set; }
}
我需要从交换类型列表中创建一个字典,其中密钥是来自有效的日常属性,并且字典中的值是一个交换对象的列表,其中有效Fromfrom propery Day属性等于该属性钥匙。
这是我尝试的:
var exchangeRates = dbContext.ExchangeRates.Where(x => x.ValidFrom.Year == DateTime.Now.Year)
.Where(x => x.ValidFrom.Month == DateTime.Now.Month)
.Where(x => x.ValidFrom.Day >= day)
.GroupBy(k => k.ValidFrom.Day, v => v)
.ToDictionary(x => x.Key, x => x.ToList());
我有以下错误:
system.invalidoperationException:linq expression'DBSET() 。 。 。 .groupby( Keyselector:k => k.validfrom.day, ElementSelector:V => v)'无法翻译。 插入“可忽略的”,“ asasyncenumerable”,“ tolist”或'tolistAsync'。
通过
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这就是我最后解决的方式:
This is how I solved at the end: