前の投稿が削除されました。更新日:
したがって、私には固有の問題がありますが、これはおそらくかなり一般的です。プロパティは、おそらく最も一般的に使用されるコードです。データを一定値のストレージに保持する必要があるためです。それで、これをどのように実装できるかを考えました。それから私は、ジェネリックが生活をいかに簡単にできるかを考えました. 残念ながら、複雑な作業を行わずにジェネリックでプロパティを使用することはできません。これが私の解決策/問題でした。それが最善の方法かどうかわからないので、仲間にレビューを求めていたのはそのためです。
アプリケーションは大規模になることに注意してください。これは非常に簡単な例です。
概要:
プレゼンテーション層: インターフェイスには一連のフィールドがあります。または、Web サービスを介してネットワークを介してデータベースに送信されるデータです。
// Interface:
public interface IHolder<T>
{
void objDetail(List<T> obj);
}
したがって、私の最初の考えは、オブジェクトのそれぞれを一般的に処理できるようにするインターフェイスでした。
// User Interface:
public class UI : IHolder
{
void objDetail(List<object> obj)
{
// Create an Instance
List<object> l = new List<object>();
// Add UI Fields:
l.Add(Guid.NewGuid());
l.Add(txtFirst.Text);
l.Add(txtLast.Text);
// l to our obj
obj = l;
return;
}
}
これでインターフェースができました。これは、UI で情報を入力するために使用されています。これは、私の好奇心の根源が混合物に投入された場所です.
// Create an Object Class
public class Customer : IHolder
{
// Member Variable:
private Guid _Id;
private String _First;
private String _Last;
public Guid Id
{
get { return _Id; }
set { _Id = value; }
}
public String First
{
get { return _First; }
set { _First = value; }
}
public String Last
{
get { return _Last; }
set { _Last = value; }
}
public virtual objDetail(List<Customer> obj)
{
// Enumerate through List; and assign to Properties.
}
}
これは私がクールだと思った場所です。ポリモーフィズムを使用して同じインターフェイスを使用できる場合。しかし、それをオーバーライドして、メソッドを別の方法で実行します。したがって、インターフェイスはジェネリックを利用します。特定のオブジェクト クラスにモーフする機能を備えています。
オブジェクトクラスです。基本的な Crud 操作を処理する Entity インターフェイスに移行できます。
この例が私の意図に最適ではないことはわかっています。ポリモーフィズムを使用する必要はありません。しかし、これは全体的なアイデア/目標です...
- プレゼンテーション レイヤー UI フィールド値を格納するためのインターフェイス
- プロパティを目的のクラスに実装する
- クラスのラッパーを作成します。これはポリモーフィングできます。
- Crud操作のジェネリックにモーフィング
私は正しい道を進んでいますか?これはタブーですか?私はこれをすべきではありませんか?私のアプリケーションは各インスタンスを保持する必要があります。しかし、プロセス内のすべてのインスタンスを中断することなく、非常に迅速に適応できる柔軟性が必要です。それが私が問題を解決できると思った方法です。何かご意見は?提案?ここにコンセプトがありませんか?それとも私は考えすぎですか?私はボートに乗り遅れ、自分のアイデアを完全に間違って実装しましたか? そこが私が迷っているところです...