2017-07-10 9 views
0

.netウェブサイトプロジェクトのコードを確認すると、ほとんどのクラスが広範なプロパティで作成されています。これらは、SQLから取得したすべてのプロパティーを使用しないリストビューとリピーターのデータソースとして使用されています。リピータに(接触)一覧を結合たとえばアイテムとリストに同じクラスを使用する

しかしリピータは、アイテムのID、ニックネーム、フルネーム、郵便番号

詳細クラスが必要:

Public Class Contact 
Private _id as integer = 0 
Private _nickname As String = "" 
Private _email As String = "" 
Private _website As String = "" 
Private _titleID As Integer = 1 
Private _fullname As String = "" 
Private _address1 as string = "" 

及び20以上の変数を。

編集:27のプロパティ、コンストラクタおよびオブジェクトにバインドするときに選択的にSQLからのプロパティの一部を取得することができ、クラス(REF plutonix)

を完了するために、共有メソッドが続きます。または、より少ないプロパティを使用するリストに対して別のクラスが必要ですか? Linqは使用されません。

+0

これは非常に幅広く、ほとんどチュートリアルが必要です。しかし、a)それらのもののどれもがプロパティではありません。b)プライベートなので、クラスの外で可視ではありません。 [ask]を読んで[ツアー] – Plutonix

答えて

0

もちろん、プロパティの設定は可能ですが、残りのプロパティは型のデフォルト値になります。

+0

ありがとうございます - SQLフィールド 'website'がnvarchar(75)で、クラスの長さがゼロの文字列がデフォルトの場合、リストの長さがゼロのプロパティ'website' – paul

+0

これは、リストにStringプロパティがデフォルト値のString - Nothing(C#ではnull)を持つことを意味します。しかし、たとえばDateTimeなどのプロパティを使用する場合、デフォルト値のDateTime.MinValue(1.1.0001)にはメモリ内のスペースが必要であり、アイテムを大量に使用すると考慮する必要があります(100 000+) –

+0

また、どのようにO/Rマッパーを使用するかは、DBから.NETクラスへのデータのマッピング方法も重要です。 –

関連する問題