問題タブ [dapper-extensions]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
dapper - Dapper 拡張機能 - 'System.Int32' 型のオブジェクトは 'System.Int16' 型に変換できません
dapper 拡張機能 (SqlMapperExtensions.cs) を使用しています。
単純な挿入を行う場合:
例外があります:
データベースの Id タイプは SmallInt です。
POCO の Id タイプは Short です。
Catch ブロックでブレークポイントを設定すると、データが正常にデータベースに保持されていることがわかります。問題は、メソッドが戻ってきて、作成された新しい Id を POCO に設定しようとしたときのようです。
POCO の Id タイプを Intに変更すると、機能します。
これはバグですか?私は何が欠けていますか?
c# - CustomPropertyTypeMap を使用して特定のプロパティをマップする
異なる列名を持つテーブルの列にマップされた 1 つまたは 2 つのプロパティ (数十のうち) を持つ必要があるクラスがいくつかあります。データベース内の列名と異なるのは 2 つだけである場合、すべてのプロパティをマップしたくありません。
CustomPropertyTypeMap で使用できるさまざまなマッピング オプションのすべてについて適切なドキュメントを見つけることができません。それらはすべて、オブジェクト全体を CustomPropertyTypeMap でマッピングすることを示しているだけです (Dapper テスト クラスと同様)。以下を使用する場合:
RepositoryParameterAttribute で装飾されていないプロパティは、null (または 0) を返します。これを使用して特定のプロパティだけをマップし、Dapper に装飾されていない残りの属性をハイドレートさせることができますか?それとも何かカスタムを行う必要がありますか?
ありがとう。
predicate - Dapper 拡張機能を使用して、ランダムに並べ替えるにはどうすればよいですか?
Dapper Extensions での並べ替えは、述語を使用して実現できるようです。
私の質問は、述語にランダムな並べ替え (つまり、SQL の RAND()) を実装するにはどうすればよいですか?
c# - dapper を使用して ID の規則を作成する
「Id」という名前の列を主キーに設定する規則を作成したいと思います。ドキュメンテーションを見てきましたが、これまでのところ、次のようにクラスごとに手動で行うことしかできませんでした。ドメル:
私はもっと好きです:
それはdommelまたはdapperの拡張機能またはその他の可能性があります。私はこの実装を流暢にするだけです。
何かアドバイス?ありがとう!
dapper-extensions - 述語を使用した日付比較のための Dapper 拡張機能
述語グループを使用して日付値を比較する方法
これは私がやろうとしてきたことです
特定の GUID で値を選択しようとしていますが、必要な開始日と終了日の間に配置したいと考えています。
BetweenValue も試しましたが、役に立たないようです。
c# - SqlMapper.cs での Dapper.net エラー
vb.net と micro ORM DAPPER.NET を使用して新しいプロジェクトを開始しました。nuGet で dapper と dapper.simpleCRUD を統合しました。CRUD操作を実行したいときに問題が発生します.SqlMapper.csに問題があります.「dapper.simpleCRUD」拡張機能をプロジェクトに正常に統合したため、理由がわかりません. 何が間違っていますか??
手動で SqlMapper.cs ファイルを追加しようとすると、次のようになります。
c# - クエリ結果に 1000 を超えるレコードがある場合に Dapper によって System.Data.SqlClient.SqlException がスローされる
以下のメソッド呼び出しは、「varchar データ型から datetime データ型への変換により、範囲外の値が発生しました。」というメッセージが表示されて失敗します。
結果セットに含まれるレコードが 1000 (またはそれ以下) の場合、コードは正しく機能します。SQL Server Management Studio (2014 edition) でクエリを実行しても、エラーは発生しません。選択から TOP を削除して SSMS で実行しても、エラーは発生しません (予想どおり、12,000 件以上のレコードが返されます)。
1000 行を超える結果セットを正常に取得するには、上記の実装の代わりに何をすべきですか? この場合、ストアド プロシージャの方が適切でしょうか?
dapper - C# Identity UserManager CreateAsync の場合、FindByEmailAsync は Id=0 のユーザーを返します
Dapper との同一性。
ID のユーザーのタイプは IUser< int > です
ユーザーが登録すると、AccountController にユーザーを作成します。
登録 POST:
成功した場合は、新しく作成されたユーザー レコードを取得する必要があります。これは、上記の「新しい」ユーザー クラスが ID をまだ認識していないためです...
この見つかったユーザー レコードを見ると、user.Id = 0 です。しかし、DB を見ると、この新しく作成されたユーザーの行は次の Id です。たとえば、9 直接 Db クエリを実行しても、むしろUserManager の FindByNameAsync 関数を使用するよりも、返される Id は常に 0 です。
私は本当に困惑しています - 私はおそらく何かを逃した...
割り当てられた DB ID を持つユーザー レコードを取得するには、どうすればよいですか?
編集:私のユーザー検索機能は次のとおりです。