【ASP.NET・C#】C#で共通関数を定義するには
【今回の紹介】
複数フォーム(画面)から共通で呼ぶ関数を作成した時のメモを残します。
【内容】
まず、前提としてC#には、
・複数フォームから呼ぶ共通関数を定義しておくような場所がないそう
また、
・共通で呼ぶただのモジュールなので、オブジェクト指向で書く必要はなさそう
→インスタンス化して、固有のプロパティを持たせる必要がない
調べてみると、
以下のようなクラス自体にstaticをつけ、インスタンス化せずに
staticなメソッド・プロパティを使って、共通関数として使うのが一般的なようです。
参考:
☆参考ソース
共通関数 画面のIDによって、ボタンobjを非表示にするという処理
public static class Class1 { private static Dictionary<string, Boolean> con = new Dictionary<string, bool>() { {"test1",true}, {"test2",true}, {"test3",true} }; public static void set (string screenId, Button button){ if (con.ContainsKey(screenId)) { if(con[screenId]){ //画面固有の処理 button.Visible=false; } } } }
呼び出し部分
public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { Class1.set("test1", Button1); } }