System.NotImplementedException 类

本文提供了此 API 参考文档的补充说明。

当特定方法、get 访问器或 set 访问器作为类型成员存在但未实现时,会引发NotImplementedException异常。

NotImplementedException 使用支持引用相等性的默认 Object.Equals 实现。 有关实例 NotImplementedException的初始值列表,请参阅 NotImplementedException 构造函数。

引发异常

当该成员仍在开发中时,可以选择在自己的类型中的属性或方法中引发 NotImplementedException 异常,并且稍后才会在生产代码中实现。 换句话说, NotImplementedException 异常相当于“仍在开发”。

处理异常

异常 NotImplementedException 指示您尝试调用的方法或属性没有实现,因此不提供任何功能。 因此,不应在 try/catch 块中处理此错误。 相反,您应该从代码中删除成员调用。 在库的生产版本中实现成员时,可以包含对该成员的调用。

在某些情况下, NotImplementedException 异常可能不用于指示仍在开发中的预生产库中的功能。 但是,这仍然指示该功能不可用,应从代码中删除成员调用。

NotImplementedException 和其他异常类型

.NET 还包括另外两种异常类型,NotSupportedExceptionPlatformNotSupportedException,指示某一类型的特定成员没有实现。 在以下条件下,应引发其中一个异常,而不是 NotImplementedException 异常:

如果已实现抽象基类并向其添加了必须由派生类替代的新成员,则还应引发 NotSupportedException 异常。 在这种情况下,使成员抽象会导致现有子类无法加载。