C# 你将如何通过&燃气轮机=&引用;在牢房里?
我想将一些运算符作为querystring参数传递,以便将它们与值一起转换为SQL查询。其想法是让querystring参数决定页面是否返回价格等于、大于或等于、大于、小于或小于或等于的搜索结果,如下所示:C# 你将如何通过&燃气轮机=&引用;在牢房里?,c#,asp.net,sql,query-string,C#,Asp.net,Sql,Query String,我想将一些运算符作为querystring参数传递,以便将它们与值一起转换为SQL查询。其想法是让querystring参数决定页面是否返回价格等于、大于或等于、大于、小于或小于或等于的搜索结果,如下所示: =, >=, >, < and <= =,>=,>,=”)并在重定向之前将其添加到我的查询字符串中之后,我在URL中得到了这个。。。search.aspx?operator=%26gt%3d&value=5我猜在转换此querystring参数以用于我的SQL查询时
=, >=, >, < and <=
=,>=,>,<和URL编码绝对是您想要的。看看Web.Utils名称空间 正如用户所说,使用。我曾经写过这样的代码,所以我不必调用Server.UrlEncode
作为旁注,请注意aka Little Bobby Tables:
()您可以像下面的示例一样使用eq、ne、gt、lt、ge、le、sa、eb、ap
ge表示=
GET[base]/科目?成绩=ge90
le表示使用LINQ?这样就可以了。你能在他的查询字符串中显示一个包含Beardy中士想要的一些字符的代码段吗?好的,在执行Server.UrlEncode(“>=”)并在重定向之前将其添加到我的查询字符串中之后,我在URL中得到了这个。。。search.aspx?operator=%26gt%3d&value=5我猜在转换此querystring参数以用于我的SQL查询时,我会对其使用Server.UrlDecode吗?然后我需要检查SQL注入,正如Uwe在回答中提到的那样。谢谢@Kon!:)是,然后调用Server.UrlDecode对参数进行解码。我不知道SQL注入与这个问题有什么关系。那是一个完全不同的问题。如果您正在使用(您应该使用)参数化存储过程或实体模型框架之类的东西,您就不必担心SQL注入。@Uwe Keim:让这个CW看看您在上面发布了最常见的引用漫画,所以…?@gbn-请原谅我的无知,“CW”代表什么?“社区维基”:文本框下方的复选框,用于键入answer@gbn完成!这对我/文章/答案有什么好处吗?谢谢你的回复@Uwe-Keim!UrlEncode definaly似乎是一个不错的选择,它似乎工作得很好!总是试图记住SQL注入,我想最好的方法是在构建动态SQL之前,确保参数仅等于我的5个操作符中的一个?这是一个非常隐蔽的解决方案,但仍然是人类可读的。谢谢太好了!