0

クラス「コントラクト」を定義し、そこからいくつかの種類のコントラクトを派生させました。私はストレージに Entity Framework を使用しており、異なる派生クラスに対して Contract_Put、Contract_Call などのテーブルになるように、Table-per-type モデルを選択しました。

次に、すべての契約を一覧表示し、契約の種類を識別する文字列を含むフィールドを作成します。私はこのようなことを試しました:

var ret = from c in db.Contracts select new ContractsVM { ... }

しかし、契約の種類を特定する方法がありません... 助けてください。

4

1 に答える 1

1
var ret = from c 
              in db.Contracts.OfType<Contract_Put> 
              select new ContractsVM { strType="Put",... };
ret = ret.Concat(from c 
              in db.Contracts.OfType<Contract_Call> 
              select new ContractsVM { strType="Call",... });

変数retには、これらすべての値が含まれます。それが役に立てば幸い!

于 2013-07-23T20:21:29.567 に答える