我正在使用带有Code First的ASP.NET Web API,我有一个名为profile的模型,它应该保存数据:
我想做这样的事情:
List<Uri> ProfileUris = DBContext.Profiles.Select(p => new Uri(p.Link)).ToList()
以上引发错误
任何想法如何在没有for循环的情况下进行此转换。
答案 0 :(得分:7)
实体框架无法将Uri创建转换为SQL代码。从数据库中选择链接列,然后通过AsEnumerable()
调用将处理移动到客户端 - 这将允许您调用C#代码而不尝试将其转换为SQL:
List<Uri> ProfileUris = DBContext.Profiles.Select(p => p.Link)
.AsEnumerable()
.Select(l => new Uri(l))
.ToList();