【问题标题】:Calling methods from one ASP.Net web form from another web form从另一个 Web 表单调用一个 ASP.Net Web 表单的方法
【发布时间】:2014-07-07 13:28:54
【问题描述】:

我正在处理的网站有两个不同的页面,每个页面都在尝试做同样的事情。其中一个页面虽然仍在使用,但尚未更新,因此代码不再做它应该做的一切。

我不想继续这个湿解决方案并复制丢失的代码,而是想利用已更新的代码。理想情况下,我会将函数复制到辅助类中或创建一个基类来提供此功能,但是一个函数调用许多私有函数,并且每个私有函数都将业务逻辑与表示逻辑混合。

我没有文档而且时间很短,所以这样做是不可行的。所以我的问题是,从 page2.aspx 调用 page1.aspx 上的函数有什么缺点?这是一个共享功能,所以我希望它会没问题,但我们将不胜感激。

【问题讨论】:

  • 如果它正在调用包含特定于页面的业务和表示逻辑的私有函数,那么您希望如何使用它?
  • 我不明白你的意思?我调用该方法并触发。我感兴趣的是为什么我想避免这样做。
  • 我的观点和 JohnSaunders 完全一样。如果它是真正共享的,那么您可以将其拉出到它自己的助手类中。如果它不是并且它指的是拥有页面中的字段或对象,那么它不是共享的,你真的不应该调用它。但是没有代码,这里没有人可以说是或否。但从你提供的情况来看:没有。

标签: asp.net .net vb.net oop webforms


【解决方案1】:

最好能展示一些代码,但我不得不说,如果这两个方法都是Shared,那你应该没问题。

但是,这样的Shared 代码不属于任何一个页面。它属于两个页面都可以访问的其他类。

【讨论】:

  • 谢谢,我知道单独上课是我正在寻找快速选择的方法。我主要关心测试,因为没有文档我会很挣扎。
  • 将代码移动到单独的类需要多长时间?
【解决方案2】:

对我来说听起来像是一团糟。你不能描述,但没有真正看到发生了什么很难说。如果这段代码正在接触 dom 元素并遇到页面循环事件,那可能会很痛苦。我想说.. 将实际的业务逻辑放在页面之外的另一个类中,然后以这种方式引用业务逻辑,但是对于 dom 元素,直接 webforms 已经过于复杂了,我会尽量避免让它变得更糟。也许您可以将这些 dom 元素拉入用户控件并在两个页面上重用它?无论哪种方式听起来你都有很多乐趣:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-20
    • 2018-03-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多