gpt4 book ai didi

c# - C# 自动属性何时初始化?

转载 作者:行者123 更新时间:2023-12-05 08:56:25 25 4
gpt4 key购买 nike

在 webforms .aspx 页面系统上,母版页有一些自动初始化的属性,因此

public bool MyProp => bool.Parse(Service.Settings["YorN"]);

分析页面加载,我发现在 PreRender 事件和其中一个属性的初始化之间存在很大差距。

我在哪里可以查看延迟?两者之间有什么关系?

最佳答案

那不是汽车属性(property)。那是一个表情浓郁的成员。

MyProp 的实现计算bool.Parse(Service.Settings["YorN"]); 每次调用属性 getter .因此,在您的情况下,每当调用 MyProp 时都会运行该代码,并且它会在每次 被调用时运行。

如果你使用了一个自动属性,那就是

public bool MyProp {get;} = bool.Parse(Service.Settings["YorN"]);

然后它将在创建实例之后运行,就在调用构造函数之前(当其他字段初始化程序运行时)。请注意,由于此代码在字段初始值设定项中运行,因此它不能使用隐式引用 (this),因此如果 Service 是实例变量,则无法编译。

关于c# - C# 自动属性何时初始化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40770175/

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