【发布时间】:2012-11-21 17:21:56
【问题描述】:
我有一个 C# 类 (processcontroller.cs)。
在这个类中,我将其他类添加到列表对象中(这些类将在稍后调用)。
我的一个子类如下所示:
namespace PowerShellTests
{
public class Step1
{
public void Initialize()
{
try
{
File.Open("filethatdoesnotexist.txt", FileMode.OpenOrCreate);
}
catch (Exception exc)
{
ExceptionHandler.LogException(exc);
}
}
}
}
我定义了我的进程控制器路径,然后像这样设置它的第一个子类:
processController.steps[0] = $Step1Class
我用以下 3 个 PS 命令定义了 $Step1Class
$script = [io.file]::readalltext('step1.cs')
add-type $script -lang csharpversion3
$Step1Class = New-Object Step1
但是在上面代码的最后一行我得到一个错误:
当前上下文中不存在名称 ExceptionHandler。
我明白为什么会触发错误,但除了在 Step1 类本身中定义 ExceptionHandler 之外,我还有哪些其他选项?我不想在 Step1.cs 中定义它的原因是因为这意味着我必须为每个其他步骤类重复它。
【问题讨论】:
-
ExceptionHandler到底是什么?自定义类?该类属于System.ServiceModel.Dispatcher指令吗?这个没有一个叫做LogException(Exception e)的方法。 -
对不起,我应该说,ExceptionHandler类是我写的自定义类。
标签: c# powershell exception-handling add-type