问题标题似乎有点奇怪不是吗。反正。所以我有一个基类,它有一些私有字段、受保护的属性和一个带有一个参数的构造函数,我有几个该基类的子类。每当调用这些子类方法中的任何一个时,都需要实例化子类,并且在方法执行完成后,对象将被销毁,因此如果再次调用该方法,则应创建该类的新实例。(它是 WCF 服务)现在,我想做的事情如下。每当调用某个子类构造函数时,我都会使用某些特定参数显式调用基类构造函数(每个子类都不同,注意:没有子类方法是相同的),当调用基类构造函数时,我想根据该参数检查一些东西,如果它通过检查,那么我想允许执行子类方法。在任何其他情况下,我都不希望它运行子类方法。所以我想要这样的东西。当调用该方法时,必须构造子类,为此,还必须构造基类,如果在基类的构造函数中检查失败,我想阻止该方法运行。我可以只拥有一个 bool 属性并将其设置在基类的构造函数中,并在每个方法调用时检查它。但我想让一些更通用的东西。可能是我建议的方式也不正确。所以你明白我想要什么。任何建议都会被采纳。提前致谢 当调用该方法时,必须构造子类,为此,还必须构造基类,如果在基类的构造函数中检查失败,我想阻止该方法运行。我可以只拥有一个 bool 属性并将其设置在基类的构造函数中,并在每个方法调用时检查它。但我想让一些更通用的东西。可能是我建议的方式也不正确。所以你明白我想要什么。任何建议都会被采纳。提前致谢 当调用该方法时,必须构造子类,为此,还必须构造基类,如果在基类的构造函数中检查失败,我想阻止该方法运行。我可以只拥有一个 bool 属性并将其设置在基类的构造函数中,并在每个方法调用时检查它。但我想让一些更通用的东西。可能是我建议的方式也不正确。所以你明白我想要什么。任何建议都会被采纳。提前致谢 可能是我建议的方式也不正确。所以你明白我想要什么。任何建议都会被采纳。提前致谢 可能是我建议的方式也不正确。所以你明白我想要什么。任何建议都会被采纳。提前致谢
class BaseClass
{
private bool _isValid;
private SomeService someService;
public BaseClass(SomeEnum value)
{
someService = new SomeService();
if (someService.Validate(value))
{
_isValid = true;
}
}
protected internal bool IsValid { get { return _isValid; } }
}
class SubClass : BaseClass
{
// object declaration
public SubClass () : base(SomeEnum.SomeValue)
{
// constructing some objects here
}
public Response Operation('parametereGoHere')
{
if (IsValid)
{
// perform operation. construct Response object and return it
}
}
// other methods omitted.
}
因此,每当Operation()
调用方法时SubClass
,必须构造导致构造的方法BaseClass
,并且基类设置其值,_isValid
然后用于检查有效性,但我想让一些更通用的东西。让它而不是仅仅将值设置_isValid
为 true 只是什么都不做或设置一些其他属性,如果Valiate()
失败就停止执行并且根本不做任何事情。Operation()
在这种情况下,如果我们设法停止类的构建,调用路由将无法调用。如果不可能,我对我现在拥有的解决方案非常满意。但如果是的话,我会很高兴看到这一点。注意:在每个子类中,方法都是不同的,我必须检查IsValid
以允许执行方法。