问题描述
如何从异常中获取FileRowNumber?
代码如下:
try
{
using (GenericParserAdapter parser = new GenericParserAdapter(dataSource,Encoding.Default))
{
parser.ColumnDelimiter = delimiter;
parser.FirstRowHasHeader = FirstRowHasHeader;
parser.FirstRowSetsExpectedColumnCount = true;
parser.TrimResults = true;
return parser.GetDataTable();
}
}
catch (Exception e)
{
if (e.Message.Contains("exceeds ExpectedColumnCount"))
{
}
}
解决方法
您需要更具体地说明您的异常类型:您需要使用库中提供的 ParsingException 类型,而不是使用通用的 Exception 类型GenericParsing:
try
{
using (GenericParserAdapter parser = new GenericParserAdapter(dataSource,Encoding.Default))
{
parser.ColumnDelimiter = delimiter;
parser.FirstRowHasHeader = FirstRowHasHeader;
parser.FirstRowSetsExpectedColumnCount = true;
parser.TrimResults = true;
return parser.GetDataTable();
}
}
catch (ParsingException e)
{
if (e.Message.Contains("exceeds ExpectedColumnCount"))
{
int fileRowNumber = e.FileRowNumber;
}
}
现在您想知道“我在哪里可以找到这些信息?”好吧,它就在您发布的屏幕截图中(为您用绿色下划线)