から継承する Person と Organization の 2 つのタイプがありIContact
ます。
いくつかのロジックに基づいてこれらの型のいずれかを返すメソッドがあります
private Type GetPersonOrOrganisation(string some variable)
{
either returns Person or Organisation type
}
個人または組織についてデータベースにクエリを実行するメソッドがあります。
public static IQueryable<T> Query<T>(this IUow uow) where T : IContact
{
return uow.Query<T>();
}
私の質問は、返された Type を使用してGetPersonOrOrganisation
クエリを呼び出す方法です。
だから、言って:
var contactType = GetPersonOrOrganisation(string some variable);
var contact = Query<contactType>();
ここで、contactType は Person または Organization のいずれかになります。
明らかにそれはコンパイルされません。それが私の質問です。から返されたものに基づいて、データベースから適切なタイプのクエリを作成する方法GetPersonOrOrganisation
。