【问题标题】:How to create a global getter function for an entire C# class? [closed]如何为整个 C# 类创建全局 getter 函数? [关闭]
【发布时间】:2022-07-27 00:07:53
【问题描述】:

是否可以为整个类本身创建一个吸气剂?我的目标是有一个类,例如,称为 MyClass,这样每当使用“MyClass.”时,都会在任何访问之前执行一些检查(无论是存在/不存在的属性)。这样做的一个原因是允许在未找到 property_name 的情况下执行操作,这样我就可以在不引发异常的情况下获取不同的属性。

在这方面的任何帮助都会很棒。

谢谢

【问题讨论】:

  • 你能举个实际的例子吗?这听起来像是解决设计问题的尝试,而后者应该被修复。我能从你的问题中读出的最接近的可能是静态属性、构造函数或扩展方法,但我不确定这是否真的是你想要的。
  • 似乎你想要一个静态属性。只需在属性名称前添加static。无论如何,在静态类型语言中,属性不存在是不可能的,因为它会让你的编译器抱怨。

标签: c#


【解决方案1】:

如果您有您的类的实例,您可能正在这里寻找扩展方法。 这是关于它的完整文档:https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/extension-methods

否则,您可以在静态类上使用静态属性或方法: https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/static-classes-and-static-class-members

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多