Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# FileHelpers库-未捕获AfterReadRecord异常_C#_Filehelpers - Fatal编程技术网

C# FileHelpers库-未捕获AfterReadRecord异常

C# FileHelpers库-未捕获AfterReadRecord异常,c#,filehelpers,C#,Filehelpers,我正在使用NuGet的FileHelpers库,版本2.9.9。我在尝试使用AfterReadRecord事件时遇到问题 当我从此事件中抛出异常时,库不会捕获该异常。据我所知,该库将从AfterReadRecord事件捕获异常,并从中构建ErrorInfo集合。相反,我得到了一份工作 VS2013中的“用户代码未处理异常”警告。“安 FileHelperTest.exe中发生“System.exception”类型的异常 但未在用户代码“”中处理其他信息:字段1为 无效” 我做错了什么?提前谢谢

我正在使用NuGet的FileHelpers库,版本2.9.9。我在尝试使用AfterReadRecord事件时遇到问题

当我从此事件中抛出异常时,库不会捕获该异常。据我所知,该库将从AfterReadRecord事件捕获异常,并从中构建ErrorInfo集合。相反,我得到了一份工作

VS2013中的“用户代码未处理异常”警告。“安 FileHelperTest.exe中发生“System.exception”类型的异常 但未在用户代码“”中处理其他信息:字段1为 无效”

我做错了什么?提前谢谢

代码如下所示:

[DelimitedRecord(",")]
public class MyClass
{
    public string Field1;
    public string Field2;
    public string Field3;
}

class Program
{
    static void Main(string[] args)
    {
        FileHelperEngine<MyClass> engine = new FileHelperEngine<MyClass>();
        engine.AfterReadRecord += new FileHelpers.Events.AfterReadHandler<MyClass>(engine_AfterReadRecord);
        engine.ErrorMode = ErrorMode.SaveAndContinue;
        MyClass[] records = engine.ReadString(",2,3");
        ErrorInfo[] errors = engine.ErrorManager.Errors;            
        Console.WriteLine(errors.Count().ToString());
        Console.Read();
    }

    static void engine_AfterReadRecord(EngineBase engine, FileHelpers.Events.AfterReadEventArgs<MyClass> e)
    {
        if (string.IsNullOrEmpty(e.Record.Field1))
            throw new Exception("field1 is invalid");
    } // I get the Exception unhandled warning here.
}
[分隔符记录(“,”)]
公共类MyClass
{
公共字符串字段1;
公共字符串字段2;
公共字符串字段3;
}
班级计划
{
静态void Main(字符串[]参数)
{
FileHelperEngine=newFileHelperEngine();
engine.AfterReadRecord+=新的FileHelpers.Events.AfterReadHandler(engine\u AfterReadRecord);
engine.ErrorMode=ErrorMode.Save并继续;
MyClass[]记录=engine.ReadString(“,2,3”);
ErrorInfo[]errors=engine.ErrorManager.errors;
Console.WriteLine(errors.Count().ToString());
Console.Read();
}
静态无效引擎\u AfterReadRecord(EngineBase引擎,FileHelpers.Events.AfterReadEventArgs e)
{
if(string.IsNullOrEmpty(e.Record.Field1))
抛出新异常(“field1无效”);
}//我在这里得到未处理的异常警告。
}

您的程序对我来说运行良好

您确定不仅仅是VisualStudio通知您引发了异常吗。如果在Visual Studio之外运行该应用程序,它是否按预期工作

您可以从调试/异常。。。菜单