无法使用自定义属性创建自定义异常类构造函数

哈尔

我不了解尝试为自定义异常类设置以下构造函数时遇到的编译错误:

[Serializable]
        class AuthenticationException : Exception
        {
            public int PracticeID { get; set; }

            public AuthenticationException()
                : base() { }

            public AuthenticationException(string message)
                : base(message) { }

            public AuthenticationException(string message, Exception InnerException)
                : base(message, InnerException) { }

            public AuthenticationException(SerializationInfo info, StreamingContext context) 
                : base(info, context) { }

            public  AuthenticationException(int PracticeID)
                : base(PracticeID)
            {
                this.PracticeID = PracticeID;
            }
        }

我得到的错误如下:

最佳重载方法匹配'System.Exception.Exception(string)'有一些无效的参数

无法从'int'转换为'string'

两者都发生在该类的:base(PracticeID)部分。

我不明白为什么要在这里寻找一个字符串。

我试图寻找答案,并针对这两个先前提出的问题

具有属性的自定义例外

使自定义.NET Exception可序列化的正确方法是什么?

我不确定我正在做的操作与导致错误的第一个操作有所不同,我尝试读取/复制第二个错误,但我完全迷失了。

该异常将在内部循环中发生,我想在外部循环上有一个客户错误捕获块来处理这种特殊情况。

我认为一种解决方法是仅使用异常类的Data属性,并在外部循环的catch块中检查是否存在诸如“ Authenticate”之类的项的键并在那里处理异常。

但我不想这样做,因为那种排序异常处理是自定义异常类要执行的操作。

埃文·特里波利(Evan Trimboli)

基本异常类没有匹配的构造函数。

相反,更改代码以调用空的构造函数(选项A),或者使用id提供默认错误消息(选项B):

[Serializable]
class AuthenticationException : Exception
{
    public int PracticeId { get; }

        // Other constructors

    // Option A
    public AuthenticationException(int practiceId)
        : base()
    {
        PracticeId = practiceId;
    }

    // Option B
    public AuthenticationException(int practiceId)
        : base("Invalid id: " + practiceId)
    {
        PracticeId = practiceId;
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

尝试使用构造函数创建自定义列表类

Java自定义异常中的超类构造函数

无法从其构造函数访问自定义元素的属性

当我创建自定义异常类时,如何使用提供的参数调用基本构造函数?

尝试不使用新的自定义类构造函数

我可以使用自定义构造函数创建自定义数组吗?

UserControl:在构造函数中使用自定义属性

使用自定义IDResolver的属性异常

无法创建自定义类的实例

如何使用基于 C# 中自定义异常构造的函数抛出自定义异常?

如何使用与其父类构造函数不同的参数创建自定义(ElevatedButton)类构造函数?

无法使用自定义类创建QList

创建自定义属性

构造函数中的C ++自定义异常throw()

在Laravel 5.3中创建自定义异常类和自定义处理程序类

无法使用自定义结构的属性

使用UI设计文件并使用自定义构造函数QT创建自定义小部件

在匿名类中定义自定义函数/属性

我可以为自定义视图创建自定义构造函数吗?

Java 类中缺少自定义构造函数

STL映射自定义键类[默认构造函数]

自定义应用程序类:构造函数与onCreate()

将文件读取到自定义类构造函数

在自定义构造函数中的堆上创建指针

为构造函数创建自定义“事件”

为什么要创建自己的自定义异常类?

为什么不能创建自定义异常类?

无法在自定义视图中解析构造函数 ArrayAdapter

在 QT Creator 中使用自定义构造函数提升自定义小部件