错误讯息: 成员'Player.GameID'没有支持的SQL转换。
LINQ:
foreach (Table ta in custQuery)
{
if (ta.Gameform_string.ToLower() == "pineapple")
{
//Add the table
Tables.Add(ta.GameID, ta);
//Add player to seats
Table<Player> p = db.GetTable<Player>();
IQueryable<Player> playerQuery =
from Seat in p
where Seat.GameID == "ASD"
select Seat;
foreach (Player player in playerQuery)
{
ta.AddSeat(player);
}
}
}
如果我删除Seat.GameID ==“ASD”,所有其他字段的加载都没有任何问题。
在播放器类中我有这段代码:
[Column(Name = "GameID", Storage = "gameID")]
private string gameID;
public string GameID { get { return gameID; } set { gameID = value; } }
这个帖子提到LINQ需要知道映射到哪里,就我所知,它就是我所看到的: The member [class] has no supported translation to SQL
如果我在没有where子句的情况下运行程序,我可以看到使用gameID值创建了播放器类:
gameID "ASD" string
GameID "ASD" string
答案 0 :(得分:2)
[Column(Name = "GameID", Storage = "gameID")]
属性必须应用于公共GameID
属性,而不应用于gameID
私有字段。