Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
asp.net中的静态函数_Asp.net_Oop_Webforms - Fatal编程技术网

asp.net中的静态函数

asp.net中的静态函数,asp.net,oop,webforms,Asp.net,Oop,Webforms,我有一个asp.net webforms应用程序,其中aspx页面从普通.net对象的层次结构中获取数据 目前层次结构是完全动态的,每个usersession实例化和存储一次,但是我希望在其中一个类中使用函数,而不创建完整的层次结构。(我希望避免重复此类中的函数,但我需要在类的上下文之外使用它) 作为一个说明性的例子,考虑一个带有购物车类的WebSt铺类型应用程序。在shopping cart类中,有一个应用折扣的函数,比如说“买3本免费1本”。我希望能够在不创建整个购物车和不在其他地方重复代码

我有一个asp.net webforms应用程序,其中aspx页面从普通.net对象的层次结构中获取数据

目前层次结构是完全动态的,每个usersession实例化和存储一次,但是我希望在其中一个类中使用函数,而不创建完整的层次结构。(我希望避免重复此类中的函数,但我需要在类的上下文之外使用它)

作为一个说明性的例子,考虑一个带有购物车类的WebSt铺类型应用程序。在shopping cart类中,有一个应用折扣的函数,比如说“买3本免费1本”。我希望能够在不创建整个购物车和不在其他地方重复代码的情况下使用此折扣功能

考虑到这是一个在IIS7下运行的基于web的应用程序,哪种方法是最好的

我应该:

  • 中断此函数并将其放入 单独的类(仅包含 静态辅助函数)
  • 就这样 这个函数在 现在的班级
  • 用别的 避免重复的方法

    • 我觉得这是一种实用的方法。如果是,只需创建一个Utils类。
      查看:

      没有看到您的代码,我不确定最佳方法。你能发布你的代码的简化版本吗


      创建一个包含所有其他类继承的函数的基类可能是有意义的。

      我没有发布任何代码,因为它在这种情况下没有真正的帮助,我认为解决我的特定问题的正确方法在类似情况下也是一种“最佳实践”。不过,我确实添加了一个例子来说明我的意思。我理解你的意思。然而,了解更多关于对象本身的信息将有助于给出更合适的答案。例如,如果要在该对象上使用的方法在逻辑上不属于该对象,我将移动它。但是,如果它涉及到所有的对象,我可能会考虑基类。希望这能有所帮助。我有一个实用程序类,但在这种情况下,将此代码放在其中感觉不自然。这不是一个真正实用的方法。同样,从外部调用特定于类的函数也是错误的,而且我还担心,如果在每个用户生成一次的类中有静态方法,会发生什么。