2

https://github.com/ServiceStack/ServiceStack.OrmLiteを読んで メソッドを見つけたので、通常の SQL (文字列コマンド) を実行して結果セットを取得できましたが、何もないと思います。

OrmLite v 4.0.17.0 をテストしています。

上のページにはSqlListというメソッドがありますが、そのようなメソッドはありません。

ここに画像の説明を入力

私は ExecuteSql を持っていますが、結果セットは返されず、int のみが返されます。

ここに画像の説明を入力

だから、2つの質問:

  1. カスタムクエリを実行する方法、文字列をパラメーターとして受け取るメソッド、および結果セット、行、オブジェクトなどを取得する方法はありますか?
  2. そして、私がそれに取り組んでいる間、「SELECT * FROM a LIMIT 10」などの「LIMIT」を作成するにはどうすればよいですか?

バージョン情報は次のとおりです。

ここに画像の説明を入力

4

1 に答える 1

2

ええ、 OrmLite v4 リファクタリングdb.SqlListで失われたことに最近気づいたので、このコミットで復元しました。これは、月末までに v4 の次のリリースで利用できるようになります。

生の SELECT クエリには引き続き使用できますdb.Select。たとえば、次のようになります。

var results = db.Select<Poco>("SELECT * FROM a LIMIT 10");

SELECTステートメントではない場合にのみ問題になります。

var results = db.Select<Poco>("Foo = 'bar'");

残りの SQL は自動的に追加されますが、SELECTステートメントを発行していない場合 (ストアド プロシージャの呼び出しなど) には問題がありますdb.SqlList。生の SQL は変更されないためです。

型付き式 API での LIMIT のサポート

制限付きでクエリを実行する別の方法は、型付き式 API を使用することです。次に例を示します。

var results = db.Select<Poco>(q => q.Limit(10));
于 2013-11-15T13:25:16.080 に答える