【发布时间】:2009-02-20 18:04:31
【问题描述】:
我正在使用 JScript.NET 在我编写的 C# WinForms 应用程序中编写脚本。它工作得非常好,但我只是尝试在脚本中放置一些异常处理,我不知道如何判断我的 C# 代码中抛出了哪种类型的异常。
这里有一些示例 JScript 代码,它抛出两种不同类型的 CLR 异常,然后尝试捕获它们并将它们区分开来。
function ErrorTest(name)
{
try
{
if (name.length < 5)
{
throw new ArgumentException();
}else
{
throw new InvalidOperationException();
}
}catch (e)
{
return e.name + " " + (e.number & 0xFFFF) + ": " + e.message;
}
}
如果我调用ErrorTest("foo"),那么我会返回"Error 5022: Value does not fall within the expected range.",如果我调用ErrorTest("foobar"),那么我会返回"Error 5022: Operation is not valid due to the current state of the object."
name 和 number 属性相同,唯一不同的是消息。我不想开始根据错误消息编写错误处理逻辑,那么有什么方法可以获取原始异常而不是 JScript Error 对象吗?
【问题讨论】:
标签: .net javascript exception