Dapperのためにsqlを動的に生成して実行しようとしていますが、単に型を渡すだけで、sqlが動的に生成されて実行されます。Dapperクエリマップの動的Func <>
例クラス:
public class User
{
[Key]
public int UserId { get; set; }
public Address Address { get; set; }
}
public class Address
{
[Key]
public int UserId { get; set; }
public string PostCode { get; set; }
}
が効果的に次のことを実行します:
// sql: "SELECT User.UserId, Address.UserId, Address.PostCode FROM User LEFT JOIN Address ON Address.User = User.UserId"... // auto generated from 'User' type including join to 'Address';
connection.Query<User, Address, User>(sql, /*** map argument needs to be dynamic Func<> ***/);
ので、実行時にのみ知られているこれらのタイプUser
& Address
与え、どのように私は、適切なデリゲートFunc<User, Address, User>
を生成することができます引数にmap
を渡しますか?私はリフレクションを使用してFunc<>
を作成するために見ている
Func<User, Address, User> map = (u, a) => {
u.Address = a;
return u;
}
examplesは、私の場合には、彼らはその型の引数は、>/FUNC < ,,>/FUNC <、(機能<を変えるものではなく、種類が知られていると仮定します,,,など)。
助けてください。式を使って何かが付いているかどうかを調べる例を続けます。
https://stackoverflow.com/a/21731667/1264882 – WithMetta