您好我有一个DataSet,它有一个名为Header的表。 Header表有一个名为Long Agency Code的字段。还有一个名为Wage的表,它还有一个名为Long Agency Code的字段。我想根据Header Table中提供的Long Agency Code过滤Wage表。以下代码段如下所示:
DataTable dt = DataSet.Tables["Header"];
DataRowCollection headerRowCollection = dt.Rows;
foreach (DataRow headerRow in headerRowCollection)
{
FixedOutputter outputter = GetOutputter("Header", streamWriter);
MapElementCollection mapElementCollection = MapUtility.GetMapElementCollection(DataMap, "Header", DataMapFormatters);
outputter.OutputSingleRow(headerRow, mapElementCollection);
string filterExpression = "Long Agency Code == '" + headerRow["Long Agency Code"] + "'";
DataRow[] wageRowCollection = DataSet.Tables["Wage"].Select(filterExpression);
它在最后一行爆炸,显示消息:“语法错误:'代理'运算符后缺少操作数。”
答案 0 :(得分:3)
[方括号]中的Long Agency Code
,并使用一个=
而不是==
。
这是一个不错的参考:http://msdn.microsoft.com/en-us/library/system.data.datacolumn.expression.aspx
在提出Long Agency Code == '(something)'
时您使用了哪些来源? (这是错的!)