私は .net が初めてで、読み取り専用オブジェクト構造を作成する最善の方法についてアドバイスを求めています。これらの構造はコンパイル時に配置され、まったく変更されません。私のオブジェクトは次のようになります。
Public Structure CatPair
Public code, name As String
End Structure
Public Structure Category
Public code, name As String
Public subcategories() As EpfPair
End Structure
Public ReadOnly categories() As Category = {
New Category With {.code = "Code1", .name = "cat title 1", .subcategories = Nothing
},
New Category With {.code = "Code2", .name = "cat title 2", .subcategories = Nothing
},
New Category With {.code = "Code3", .name = "cat title 3", .subcategories = Nothing
},
New Category With {.code = "Code4", .name = "cat title 4", .subcategories = {
New CatPair With {.code = "subC1", .name = "subcat title 1"},
New CatPair With {.code = "subc2", .name = "subcat title 2"},
New CatPair With {.code = "subc3", .name = "subcat title 3"}
}
},
New Category With {.code = "Code5", .name = "Cat title 5", .subcategories = Nothing
}
}
したがって、オブジェクトは実際にはネストされた定数のテーブルであり、サブカテゴリを持つものと持たないものがあります。ここでの私の目標は次のとおりです。
- すべてが読み取り専用であることを確認し、
- このコードを使用しない ASP.net ページで、ページが読み込まれるたびにオブジェクトを初期化するという大きなオーバーヘッドが発生しないように (可能であれば) 実装してください。App_Code フォルダー内のモジュールでオブジェクトを宣言したので、コンパイラーがオブジェクトに触れていないページをどのように処理するかわかりません。