gpt4 book ai didi

c# - 是否可以将代码隐藏分解为多个部分文件?

转载 作者:太空狗 更新时间:2023-10-29 20:00:11 24 4
gpt4 key购买 nike

我有一个带有 .aspx.cs 代码隐藏的 .aspx Web 表单。代码隐藏有将近 2000 行长,它已经达到了轻松导航的唯一方法是在各部分之间放置大量空格,缩小以便我可以看到代码的物理外观,并且然后放大我要编辑的地方。换句话说,这是一个很大的痛苦。我想将这 2000 行拆分为代表代码中概念的不同文件。因此,当我需要在页面的“Employee”jquery 选项卡中编辑某些功能时,我可以转到仅包含“Employee”功能的部分类。

在新项目菜单中,我找不到任何额外的代码隐藏文件,没有 .aspx.cs 文件。我尝试创建一个 .cs 文件,将其重命名为 .aspx.cs,并为其赋予相同的分部类名称 --- 不行,我看不到默认分部类的任何方法,也看不到页面。

我理解的概念是,如果您的“类”在 OOP 的意义上这么长,那么它就做得太多了。我不明白的是 Web 表单代码隐藏方面的“类”。表单不能真正分解为更小的表单 --- 用户体验需要全部发生在一个页面上。

最佳答案

你可以使用 partial classes .因此,将新的 .cs 文件添加到您的项目并使用分部类。

例如,假设您当前有以下 Default.aspx.cs 文件:

public partial class _Default : System.Web.UI.Page
{
... some 2000 lines of code
}

您可以将另一个 .cs 文件添加到您的项目中,其中:

public partial class _Default
{
... a subset of the 2000 lines of code could be moved here
in order to isolate some functionality
}

非常重要的是,这个分部类在与原始类完全相同的命名空间中声明并且具有相同的名称。

但是请注意,使用部分类只会隐藏一些东西。它不清洁它。如果你想清理它,你将不得不考虑 OOP 实践来将功能拆分到不同的类中。您应该对您的应用程序进行分层。

关于c# - 是否可以将代码隐藏分解为多个部分文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9888415/

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