如何处理DataTable.Select中的特殊字符("")?

时间:2014-05-09 01:36:01

标签: c# datatable

我从excel中检索数据,而excel中的一个列中有一个#'#'喜欢"政策#"是excel中列的名称。

这是我的代码

string _policyNoColumn = dtFile.Columns[1].ToString();
string _policyNoRow = string.Empty;
foreach (DataRow _rows in dtFile.Rows)
{            
    _policyNoRow = _rows[1].ToString();
    DataRow[] _rowInFile = dtFile.Select(_policyNoColumn + " = '" + _policyNoRow + "'"); //Check on Excel
    if (_rowInFile.Count() == 2)
    {
        _lstInValid.Add(_policyNoRow); //Invalid
    }        
}

_policyNoColumn的值为" POLICY#"。这就是我得到的。

The expression contains invalid date constant '# = 'V0263680''.

这是源错误

Line 501:        {            
Line 502:            _policyNoRow = _rows[1].ToString();
Line 503:            DataRow[] _rowInFile = dtFile.Select(_policyNoColumn + " = '" + _policyNoRow + "'"); //Check on Excel
Line 504:            if (_rowInFile.Count() == 2)
Line 505:            {

突出显示的部分是Line 503

1 个答案:

答案 0 :(得分:4)

我得到了答案

我在这里做了什么

string _policyNoColumn = "[" + dtFile.Columns[1].ToString() + "]";