簡體   English   中英

如何在不同的.aspx文件中重用相同的函數或創建函數庫?

[英]How to reuse same functions in different .aspx files or make function library?

目前,我在asp.NET中的網站項目包含5個.aspx文件。 我在每個.aspx文件中定義了相同的函數。 我想要的是一種創建自己的函數庫/文件的方法,我可以將其包含在我的.aspx腳本中。

在搜索解決方案時,我只發現了動態包含ASP.NET中的文件,用於在.aspx中動態包含HTML和客戶端腳本。 所以這不是我需要的。

您可以在ASP.NET中輕松創建庫。

確定命名空間並在該命名空間下創建新類(通常每個類在單獨的文件中但不強制執行)

如果您的ASPX文件沒有代碼隱藏,我建議添加它,但無論是否有代碼隱藏,您都需要確保在訪問庫類之前包含庫文件的命名空間和他們的方法。

在ASPX文件中包含命名空間的語法是:

<%@ Import Namespace="mylibrarynamespace" %>

在代碼隱藏中是:

using mylibrarynamespace;

希望能幫助到你。

如何創建所有頁面類派生的基類? 這似乎是最簡單的方法。

您可以采用許多方法在頁面之間共享代碼。 這實際上取決於您嘗試實現的功能類型。

以下是我過去遇到過的一些內容:

  1. 使用基頁 - 您可以使您的aspx頁面派生自一個來自Page的自定義類。 這樣,您可以調用base.MethodName()。 如果您需要訪問私有/受保護的成員/事件,這將特別有用。
  2. 將方法放在類中 - 您可以創建一個包含方法的自定義類。 如果所有方法都相關,我建議這樣做,將它們捆綁在一個類中是有意義的。 您的要求還將決定該類是否應該是靜態/實例化的(對我來說,更像是在System.IO.FileSystem.IO.FileInfo之間進行選擇)。 對此缺點是,您無法訪問該頁面的任何私人成員或觸發其任何活動。
  3. 擴展方法 - 類似於#2,除了它的靜態和與頁面類型緊密相關。 語法使其更具可讀性(在我看來)。 但是,您應該考慮某些設計准則

只需創建一個.cs文件即可將其放入App_Code目錄中。 讓你的課程和適當的功能公開,你很高興。

按照這5個簡單易行的步驟! 在asp.net Web表單之間保存大量的函數重寫!

1)在App_Data文件夾中創建一個類:(右鍵單擊app>添加>添加ASP.Net文件夾)(添加>新項>類)

重要! 添加這些類時,必須將構建操作切換為“編譯”而不是文件屬性中的“內容”,否則您的代碼隱藏將無法識別導入的命名空間。

2)在課堂內創建方法:

namespace applicationName.App_Code
   {
       public class ClassName
           {
               public string classMethod()
                  {
                    return "hello";
                  }
           }
   }

3)在任何表單的代碼隱藏中,包括此類頭:

using applicationName.App_Code; //add this

4)在此表單的代碼隱藏中,創建類的實例:

ClassName classInstanceName = new ClassName(); //add this

5)在表單代碼隱藏中調用方法

classInstanceName.classMethod()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM