構造体とクラス型の基本的な違いを理解しています。しかし、ASP.NET WebForms アプリケーションでは、ASP.NET WebForms アプリケーションの Session に比較的大きなデータ構造を保持するのに理想的なコンテナーの種類は何ですか? それは構造体またはクラスであるべきですか?例えば...
Public Structure SessionData
Public ShipVias As List(Of XXXXX999.sycdefil_sql_VW)
Public ShipTos As List(Of XXXXX999.ABC_Web_ShipTo_VW)
Public Dests As List(Of XXXXX999.ABC_Web_CofA_VW)
Public Owners As List(Of XXXXX999.ABC_Web_CofA_VW)
Public Carts As List(Of XXXXX999.ABC_Web_Cart_VW)
Public Carriers As List(Of XXXXX999.ABC_Carrier_Accounts_VW)
Public Countries As List(Of XXXXX999.usp_get_CountryListResult)
Public States As List(Of XXXXX999.usp_get_StatesListResult)
Public POItems As List(Of XXXXX999.usp_get_cart_infoResult)
Public SearchResults As List(Of SearchResult)
Public Addresses As List(Of AddressResult)
Public CartItems As List(Of itemsdetail)
Public POs As List(Of POResult)
Public SomeCollection As Collection
Public CmpCode As String
Public CmpStatus As String
Public CmpSIPCust As String
Public CurrentSession As String
Public AllowAccess As Boolean
Public QuickAddItems As List(Of QuickAddItem)
End Structure
おそらくおわかりのように、XXXXX999 には、sproc、関数、ビュー、およびテーブルを含む LINQTOSQL DataContext dbml が含まれています。
編集ポイント:構造体(C#)をnull可能にできることに気づきました...vb.net Nullable(Of SessionData)で...また、疑問符はそのようなトリックを行います... Dim sd As SessionData? これを構造体として保持するか、クラスに変換する必要がありますか?