2011-08-10 20 views
-2

[OK]を、私は奇妙に聞こえるかもしれない質問があります。 cTask、cPriority、cResourceベストプラクティスアドバイス:指向オブジェクト

マイタスクオブジェクト(cPriorityなど)プロパティの優先順位と(cResouceなど)プロパティリソースを持っています

のは、私は、次の家は、オブジェクトを作ったとしましょう。私のデータモデルでは、タスクはpriorityIDを持っており、私はリソース(TaskIDとResourceIDを持つ)のための多くのテーブルを持っています

私はtask.priority.id、task.priority.name、task .resource(1).nameなどとなります。

また、cTaskに次のメソッドがあります。Add()、Delete()、Update()。

これらの方法を処理するにはどうすればよいでしょうか? task.updateのような「ノーマル」のフィールドを保存し、同じ呼び出しでのResourceIDを保存するためにoptionnalパラメータを追加するpropertysで

  1. はルック((SomePriorityID:ここ

    は、私が考えることができますオプションです))。しかし、それは醜いです。以下のようなものをやって

  2. :ここで再び

dim xPriority as new cPriority(somecontrol.selectedvalue) 

dim xTask as new cTask 

xTask.Priority = xPriority 

... more code 

xTask.Add() 

、私はこの解決策を見つける...完璧ではありません。

  1. 最後に、ResourceIDなどの他のプロパティをcTaskに追加できます。

この状況のベストプラクティスは何ですか?

ありがとうございます!

+8

あなたのクラス名は 'c'で始めるべきではありません。特にハンガリーの表記法を使用しないでください。 – SLaks

+0

@Slaksなぜそう? – David

+1

http://msdn.microsoft.com/en-us/library/ms229045.aspx 'ハンガリー表記を使用しないでください。 ' – SLaks

答えて

0

あなたは車輪を擦っているのですか?問題を解決するには、ORMを調べる必要があります。

activerecordに基づいたものは、完全にあなたのプログラミングスタイルに合っています。

CSLA.Netを参照してください。

+0

私はORMを使用できません... – David

+0

これらのソリューションのほとんどはオープンソースなので、コードを見て問題の解決方法を見てください。 – chrissie1

関連する問題