私のプロジェクト(Entity Frameworkではなく)でDevartのLinqをSQLに使用しています。 Query<T>
、またはExecuteQuery<T>
でデータベースから選択してください。ただし、T
は意図的にパブリックなパラメータのないコンストラクタを持っていません。 T
の新しいインスタンスをどうすれば上書きすることができますか?例えば、ある時点でAutoMapper.Profile
のインスタンスを与えるとしますか?または、Func<T>
にT
インスタンスを作成してから、その値をDBの値で上書きしますか?Devart.Data.Linq.DataContext.Queryを使用してクエリを実行するときの構造を指定します。<T>
using(var DC = new SomeDevartDataContextBaseDerivative())
{
// exception because parameterless constructor
var FM = DC.ExecuteQuery<SomeTypeWithoutParameterlessConstructor>("Select 1 as Id");
return FM;
}
私は、たとえば、同じパラメータを持つSomeTypeWithoutParameterlessConstructor2型を作成し、それをマップするよりもパラメータのないコンストラクタを使用することができます。 – ntohl