gpt4 book ai didi

c# - 如何动态地向类添加属性

转载 作者:行者123 更新时间:2023-11-30 14:43:12 25 4
gpt4 key购买 nike

我想创建一个错误类。它有一些静态属性。例如:MessageInnerExceptionStacktraceSource。但我想添加一些动态属性。

如果异常是 FileNotFoundException,我想添加 FileName 属性。

或者如果是SqlException,我想添加LineNumber属性。而且我无法从 Exception 继承该类,因为我从 Web 服务返回该类。我怎样才能做到这一点?

最佳答案

C# 是一种静态类型语言。这意味着如果没有一些非常时髦的 IL 注入(inject)(您绝对想避免),您通常无法在运行时向类动态添加属性。

在您的情况下,您似乎需要更好地理解异常 - 我们通常会抛出特定类型的异常来指示异常问题的原因。例如,如果您正在寻找一个文件,但它不在那里,您将抛出 FileNotFoundException,或者如果存在一些特定于应用程序的问题,您可以创建自己的异常类并抛出该异常。

请记住,异常(exception)应该是异常(exception)。

关于c# - 如何动态地向类添加属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2244617/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com