我正在考虑类似的东西,例如在Oracle PL / sql中,您可以直接写入
raise_application_error(-20001,'An arbitary error message');
在任何地方.
解决方法throw new Exception("A custom message for an application specific exception");
还不够好?
如果相关的话,你也可以抛出一个更具体的异常.例如,
throw new AuthenticationException("Message here");
要么
throw new fileNotFoundException("I Couldn't find your file!");
可以工作
请注意,您应该不会在MSDN上抛出新的ApplicationException().
不定制异常的主要原因是调用者捕获更困难 – 它们不会知道这是一个普遍的异常还是一个特定于您的代码的异常,而不会对exception.Message属性做一些简单的检查.你可以做一些简单的事情:
public class MyException : Exception{ MyException(int severity,string message) : base(message) { // do whatever you want with severity }}
以避免这种情况.
更新:Visual Studio 2015现在提供了一些自动实现异常扩展类 – 如果您使用光标在:Exception上打开“快速 *** 作和重构菜单”,只需将其声明为“生成所有构造函数”即可.
总结以上是内存溢出为你收集整理的c# – 有没有办法抛出自定义异常没有Exception类全部内容,希望文章能够帮你解决c# – 有没有办法抛出自定义异常没有Exception类所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)