C# 如何使用where关键字选择特定行

C# 如何使用where关键字选择特定行,c#,sql,asp.net,visual-studio,C#,Sql,Asp.net,Visual Studio,我对SQL查询有问题 我使用Visual Studio 2015测试我的网站,使用WebMatrix.Data.Database进行查询 无论如何,我正在创建回复系统,并使用此查询获取回复: SELECT * FROM ThreadReply WHERE ThreadId = " + ThreadId + " ORDER BY ReplyId DESC 我知道没有预防SQL注入的方法,所以请不要让我来解决这个问题 我想添加的查询是从某一行开始,然后继续查询一定数量的行,例如;我的意思是像

我对SQL查询有问题

我使用Visual Studio 2015测试我的网站,使用WebMatrix.Data.Database进行查询

无论如何,我正在创建回复系统,并使用此查询获取回复:

SELECT * 
FROM ThreadReply 
WHERE ThreadId = " + ThreadId + " 
ORDER BY ReplyId DESC
我知道没有预防SQL注入的方法,所以请不要让我来解决这个问题

我想添加的查询是从某一行开始,然后继续查询一定数量的行,例如;我的意思是像LIMIT命令一样,您可以选择要开始的行,但显然它在VisualStudio上不起作用


另外,请注意,我希望查询中的行带有
WHERE
关键字true的行,而不是实际表的行。

在这里,我认为sql的注释非常清楚。我还修复了sql注入,您只需要添加
SqlCommand.Parameters

SELECT 
    * 
FROM 
    ThreadReply 
WHERE 
    ThreadId=@ThreadID 
ORDER BY 
    ReplyId DESC
OFFSET 
    10 ROWS -- skip 10 rows
FETCH NEXT 
    10 ROWS ONLY -- take 10 rows

如何执行查询?使用
命令.ExecuteReader()
?检查我的答案,并告诉我是否对你有帮助。是的,这很有帮助,非常感谢,出于某种原因,当我输入WHERE in时,LIMIT关键字不起作用,还有Hari Prasad,我使用了WebMatrix.Data.Database.Query();此语法从2012年起受支持。对于旧版本,请参见此问题