【发布时间】:2017-03-05 00:35:53
【问题描述】:
我有一个 LINQ 语句如下:
var playedBanDataList =
from bannedPlayers in query
select new PlayerBanData
{
Admin = bannedPlayers.Admin,
BannedUntil = bannedPlayers.BannedUntil,
IsPermanentBan = bannedPlayers.IsPermanentBan,
PlayerName = bannedPlayers.PlayerName,
Reason = bannedPlayers.Reason,
IpAddresses = bannedPlayers.IpAddresses.Split(new [] {","}, StringSplitOptions.RemoveEmptyEntries).ToList()
};
return playedBanDataList.ToList();
这会失败,因为 IpAddresses 上的拆分函数失败,因为 LINQ to Entities 无法将此查询转换为 SQL。
这是有道理的,但是有什么等效的方法可以优雅地完成这个任务呢?我想到的唯一方法是在检索到的字符串上手动运行一个循环,然后将其拆分,但我想一口气搞定。
【问题讨论】:
-
您可能希望先执行查询,然后再对其执行 foreach。
-
@ChetanRanpariya 这正是我首先要避免做的事情,除非没有其他办法
标签: c# sql entity-framework linq orm