質問: mylongstring2}); > > この呼び出しは、次のエラーで失敗します。 > Npgsql.PostgresException(0x80004005):42883:関数public.test(整数、テキスト、テキスト)が存在しません。 > > ご覧のとおり、 **DbStringは** **テキスト**パラメータの型と一致し**ます** 。代わりにどのように**文字**を一致さ**せる**ことができますか?
回答: この問題はおそらく、あなたの関数はパラメータ型の`character varying`定義されていますが、エラーが示すように`text`送信していることがわかり`text` 。これは多少混乱するかもしれませんが、これらは2つの異なるバックエンドタイプです。 デフォルトでは、Npgsqlのはへの.NET文字列をマッピングし`text` 、しないように`character varying` 。あなたは受け入れるように機能を変更することができますいずれかの`text` (または過負荷を加える)、または使用`NpgsqlDbType`指定するために`character varying` (ただしDapperのでこれを行う方法がわかりません)。