c# - c# dll 将错误返回给调用应用程序的好方法是什么?

标签 c# exception error-handling

我正在编写一个 dll,它是访问数据库的包装器。而且我对 c# 还很陌生,因为我的背景是使用 perl 进行 web 开发 LAMP,我不确定将错误返回给调用应用程序的好方法是什么,以防它们将错误的参数传递给我的函数或什么不是.

我现在不知道除了可能做一些 msgbox 或抛出一些异常,但我不知道从哪里开始寻找。任何帮助或资源都将非常有用:)

谢谢~

最佳答案

您可能不希望在您的 dll 中显示消息对话框,这是客户端应用程序的工作,作为表示层的一部分。

.Net 库程序集通常会冒出主机应用程序的异常,所以这就是我要研究的方法。

public static class LibraryClass
{
    public static void DoSomething(int positiveInteger)
    {
        if (positiveInteger < 0)
        {
            throw new ArgumentException("Expected a positive number", "positiveInteger");
        }
    }
}

然后由您的主机应用程序处理这些异常,记录并适本地显示它们。

try
{
    LibraryClass.DoSomething(-3);
}
catch(ArgumentException argExc)
{
    MessageBox.Show("An Error occurred: " + argExc.ToString());
}

关于c# - c# dll 将错误返回给调用应用程序的好方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/823224/

相关文章:

java - 返回如何在 try 或 catch 中工作?

ruby-on-rails - Rails错误验证显示在字段下方

swift - 在Swift中向用户显示网络错误消息

c# - 测试 Entity Framework 5 - 内存数据库是一个不错的选择

c# - 如何在后台代码中将 <audio> 标签添加到页面内容?

design-patterns - 什么情况下应该有人 "try...catch"?这适用于图书馆吗?

java - 在异常详细信息中写什么?

java - 在一个 catch block 中处理所有 Java 异常

c# - 我在哪里可以找到 .net 源代码中的 ValueType 构造函数?

c# - 在列表框中删除超过 1 个项目