SqlExpression
特定のタイプのデータをロードするために、接続文字列を渡したいメソッドがあります。問題は、構文を特定できないように見えることです。static
私の考えは、次のようなメソッドを呼び出せるようにすることです。
OrmLiteConfig.DialectProvider = ServiceStack.OrmLite.MySqlDialect.Provider;
SqlExpressionVisitor<SampleItem> ev = OrmLiteConfig.DialectProvider.ExpressionVisitor<SampleItem>();
var result = SomeClass.Query<SampleItem>(ev, connectionString);
次のように宣言されたメソッドを使用しSomeClass
ます。
public static List<T> Query<T>(SqlExpressionVisitor<T> ev, string connectionString)
{
IDbConnection conn = connectionString.OpenDbConnection();
var result = conn.Select<T>(ev);
return result;
}
ただし、メソッドを呼び出すSelect
方法では、構文エラーが発生します。
「エラー10'T'は、ジェネリック型またはメソッドでパラメーター' T'として使用するために、パブリックパラメーターなしのコンストラクターを持つ非抽象型である必要があります。」
私はジェネリックスに不慣れです(明らかに)。