首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >包含特殊字符的RowFilter

包含特殊字符的RowFilter
EN

Stack Overflow用户
提问于 2013-08-20 22:03:25
回答 1查看 1.2K关注 0票数 0

我有一个名为myMainTable的表,我想在我的DataView上操作一个.RowFilter。目前,我的代码就是这样(用于RowFilter的值是一个示例值):

代码语言:javascript
复制
var mainDataView = maindataDataSet.Tables["myMainTable"].DefaultView;
mainDataView .RowFilter = "LastName= '" + "Gemma O'Neil" + "'";
var mainDataTable = mainDataView.ToTable();

当然,我的问题是,它认为(因为‘in O’‘Neil),我寻找的值以"Gemma“结束。

我如何才能让它成功地将RowFilter应用于全值"Gemma‘’Neil“?

EN

回答 1

Stack Overflow用户

发布于 2013-08-20 22:09:14

对于这样的情况,您只需要转义“字符;对于RowFilter来说,这只是另一个字符”:

代码语言:javascript
复制
  string surname = "Gemma O'Neil";
  mainDataView .RowFilter = "LastName= '" + surname.Replace("'", "''") + "'";

(或者,更整洁:

代码语言:javascript
复制
  string surname = "Gemma O'Neil";
  mainDataView.RowFilter =
        String.Format("LastName='{0}', surname.Replace("'", "''"));

)

顺便说一句,这是一个与人们试图避免SQL注入攻击所面临的非常相似的问题。如果这是一个新的开发,那么我建议研究Entity Framework和LINQ,它们会自动为你处理这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18337092

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档