gpt4 book ai didi

c# - 在页面部分或方法内实例化 ASP.NET 中的 C# 类

转载 作者:太空狗 更新时间:2023-10-29 21:45:12 24 4
gpt4 key购买 nike

我可能没有解释清楚。但是在部分类内部创建类与在每个方法内部创建类有什么缺点呢? (请看例子)

局部示例:

public partial class test: System.Web.UI.Page
{

cSystem oSystem = new cSystem();

protected void Page_Load(object sender, EventArgs e)
{
oSystem.useme();
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
oSystem.usethis();
}

对比

每个类中的示例:

public partial class test: System.Web.UI.Page
{


protected void Page_Load(object sender, EventArgs e)
{
cSystem oSystem = new cSystem();
oSystem.useme();
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
cSystem oSystem = new cSystem();
oSystem.usethis();
}

最佳答案

在大多数页面中,实际上不会有那么大的差异。

第一个示例将在创建 Page 时创建实例。 oSystem 将在页面的整个生命周期内可用。

第二个示例将在 Page_Load 事件中创建实例,该事件直到页面生命周期的大约中间才会发生。

参见 ASP.NET Page Life Cycle Overview有关页面生命周期的更多信息。

如果您想更早地使用该实例,例如在 Page_Init 事件中,那么前一个示例不会足够早地分配对象。

如果您的应用程序需要高性能,需要非常高效的内存管理,您可能更喜欢后一个示例。此示例将在更接近使用内存的时间分配内存,因此占用资源的时间不会比需要的时间长。也就是说,如果您想要高效的内存管理,您可以进行大量优化。

因此,在大多数页面中,没有实际差异。

关于c# - 在页面部分或方法内实例化 ASP.NET 中的 C# 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17329457/

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