【问题标题】:ASP.NET Additional Partial ClassesASP.NET 附加部分类
【发布时间】:2009-02-15 18:15:57
【问题描述】:

我的一个 ASP.NET 页面有一个巨大的代码隐藏文件。如果我可以将代码分解为多个部分类,则维护代码会更容易。但是,对于 ASP.NET,这并没有很好的记录。

我了解到必须将附加的部分类移到 App_Code 文件夹中。看来我需要使用 Protected WithEvents 声明来引用我的 Web 控件(尽管我不确定它是否会起作用)。

我现在挂断的是 ViewState。我无法在附加的部分类文件中引用它。我需要从部分类中的查询字符串中获取一个 ID 号。如果我在代码隐藏文件中为查询字符串值创建公共属性,则无法在部分类文件中引用它。它没有出现。

【问题讨论】:

    标签: asp.net viewstate partial-classes


    【解决方案1】:

    听起来你需要创建一些类来封装你的一些逻辑。如果您需要对页面上的控件进行更改,您始终可以将特定于 Web 的程序集导入到您的自定义类中。

    【讨论】:

      【解决方案2】:

      如果您的代码隐藏文件真的那么大,那么您可能需要将一些逻辑推到其他类中。了解 Model-View-Controller 模式并研究 ASP.NET MVC framework 以了解如何更好地布置对象。

      在 ASP.NET 中将所有内容放入代码隐藏文件中是一种很大的代码异味。它会导致应用程序不可扩展和不可维护。

      【讨论】:

        【解决方案3】:

        分层思考是一种很好的方法。考虑您如何与数据库交互以及您正在为哪些对象检索数据,并为它们创建“数据层”类。严格来说,它们的目的应该是与数据库交互,并返回可能包含适当数据的数据集(创建一个标准并遵循它!)。然后考虑您对该对象的数据执行哪些业务规则,并创建一个“业务层”类,其中包含调用您的数据层类并在该层中应用这些规则的方法。此时,数据应该已准备好显示,您的“表示层”(代码隐藏)负责执行的位置/时间/方式。

        我的解释不是很好,但希望你能明白。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-11-01
          • 2020-03-06
          • 1970-01-01
          相关资源
          最近更新 更多