我是Xamarin的新手,我正在寻找一种方法,所以在我的表中选择特定的行。
这是我的方法:
public List<MyWords> SelectWords( int rows , int x )
{
if ( x<=6 ) {
var myword = (from word in conn.Table<MyWords>()
where ( word.ID >= 10 && word.ID =< 17 )
select word);
return myword.ToList();
}
这是有效的但事情是,如果删除3行ID在10到17之间,则不会得到7行而是4行((17-10)= 7和(7-3)= 4)。
所以我正在寻找一种方法来获得7行,即使我删除了行。或者,如果您知道更好的解决方案。
我在想,也许有办法刷新我的话。然后这将永远有用。
感谢
答案 0 :(得分:1)
如果你想让它总是在索引十之后接下来的七个元素,你可以使你的查询像这样:
return conn.Table<MyWords>().Where(x => x.id >= 10).Take(7).ToList();
请记住,如果您创建了一个包含17个项目的表格,然后使用ID 12-16(5个项目)删除了项目,然后又添加了5个项目,则会返回带有ID 10,11,17-21的项目它没有重新分配ids