c# - 通过反射判断属性是否由函数创建
问题描述
假设我有一个Foo
像下面这样的类:
class Foo
{
public static int Bar()
{
return 1;
}
public static int x = Bar();
public static int y = 2;
}
我想用反射来知道:
x
通过函数初始化Bar
。y
不是通过函数初始化的Bar
。
有没有办法做到这一点?
解决方案
抱歉,无论如何,您的任何属性都不是从您的函数创建的。您是在Bar
谈论初始化,还是在何时/何处分配它们?请澄清你的问题。
这里问了一个类似的问题:什么时候在 C# 中初始化静态变量?
编辑
根据新信息,您可以更改访问修饰符或利用[Obsolete]
属性:https ://docs.microsoft.com/en-us/dotnet/api/system.obsoleteattribute?view=netframework-4.7.2
来控制或限制创建。
推荐阅读
- c# - 我可以在 ObjectCache 中存储 System.Timers.Timer 以供以后访问吗?
- pandas - Pandas:通过 groupby 对象迭代填充缺失值
- android - Android改变开关状态的颜色
- c# - 在鼠标悬停时更改按钮的背景
- java - JFileChooser 的限制
- java - Java:打印到屏幕被延迟
- conv-neural-network - 在 CNN 的情况下,向 Softmax 函数添加偏差有什么好处?
- razor - 如何在asp.net核心中定义返回html的函数
- reactjs - webpack 解决冲突?我应该使用别名吗?
- node.js - 如何在我调用回调的承诺中捕获错误?