質問: new Dapper.DynamicParameters(); parameters.Add("@XmlParameter", xml, DbType.Xml); SqlMapper.Query( connection, "dbo.TestXmlInput", parameters, commandType: CommandType.StoredProcedure, commandTimeout: 60 ); ``` 私の質問は以下の通りです:誰かがこれを再現できますか?もしそうなら、意図的な変更かバグか? xmlパラメータの受け渡しを実現するための回避策はありますか? 生成されたSQLは次のようになります。 ``` exec dbo.TestXmlInput (@XmlParameter1, @XmlParameter2, @XmlParameter3, ...) ``` どんな助けでも大歓迎です。
回答: 歴史的に、 `DbType.Xml`は何かを表現するために内部的にハイジャックされていました。これは問題があります。基本的に、 `where Id in @ids`パラメータ展開( `where Id in @ids` )を`DynamicParameters` 、xmlが壊れてしまいました。 私はこれを表現する別の方法を作成し、更新されたソースをGoogleコードとgithubにプッシュしました。更新されたコードを使用する場合は正常に動作するはずです。私はNuGetをまだ展開していません - あなたがこれを必要とするかどうか教えてください。