私のプロジェクトではDapper.NETをORMレイヤーとして使用しています。私はファイルのアップロードとダウンロードのためにWebApisを書こうとしています。しかし、私はそれを働かせることができません。私はすでに助けを探すのに十分な検索をしましたが、何も見つかりませんでした。Dapper.NETを使用してSQLファイルテーブルにファイルストリームを挿入できません
単純にADO.NETを使用していた場合、ファイルストリームにVarBinary型のSqlParameterを使用できました。しかしDapper.NETのクエリパラメータは単に動的オブジェクトです。したがって、次のコードではレコードをファイルテーブルに挿入できません。
var fileStream = await Request.Content.ReadAsStreamAsync();
var streamId = Guid.NewGuid();
var fileName = streamId.ToString();
var sql = @"Insert into Attachments(stream_id, file_stream, name)
Values(@streamId, @fileStream, @fileName)";
using (var db = new SqlConnection(AppConfig.ConnectionString))
{
await db.ExecuteAsync(sql, new { streamId, fileStream, fileName);
}
fileStream.Close();
として使用することができません例外がスローされる: 'System.NotSupportedExceptionを' のMscorlib.dllに
追加情報:タイプSystem.IO.Stream のメンバーファイルストリームは、パラメータ値
誰でもこれをやったことがありますか、私が使用できるダッパー拡張プラグインを認識していますか?
おかげでたくさんのハイメ・ストリームVARBINARY(MAX)と呼ばれる列を持つテーブルTESTを作成たとえば、それは私のためにDynamicParametersと完璧に取り組んでいます。私はこの情報を見つけるのがなぜそんなに難しいのだろうと思っています。この質問と回答が他の人に役立つことを願っています。 – Rajiv