現在、PDF ファイルと画像を MVC Web アプリケーションから SQL Server データベースにアップロードしています。これは完全に機能しますが、ePub ファイルをアップロードできるようにしたいと考えています。
私は同じアップローダでそれをやろうとしましたが、それがうまくいくことを望んでいましたが、これは私が得るエラーです:
SqlException がユーザー コードによって処理されませんでした。
「パラメーター化されたクエリ '(@FileContent varbinary(max) ,@MimeType nvarchar(4000),@FileName' は、指定されていないパラメーター '@MimeType' を想定しています。
アップロードを処理するコントローラーのコードも次のとおりです。
public ActionResult Index()
{
foreach (string upload in Request.Files)
{
if (!Request.Files[upload].HasFile1()) continue;
string mimeType = Request.Files[upload].ContentType;
Stream fileStream = Request.Files[upload].InputStream;
string fileName = Path.GetFileName(Request.Files[upload].FileName);
int fileLength = Request.Files[upload].ContentLength;
byte[] fileData = new byte[fileLength];
fileStream.Read(fileData, 0, fileLength);
const string connect = @"Server=localhost;Database=Images;user id=taraw; password=****;";
using (var conn = new SqlConnection(connect))
{
var qry = "INSERT INTO FileStore (FileContent, MimeType, FileName) VALUES (@FileContent, @MimeType, @FileName)";
var cmd = new SqlCommand(qry, conn);
cmd.Parameters.AddWithValue("@FileContent", fileData);
cmd.Parameters.AddWithValue("@MimeType", mimeType);
cmd.Parameters.AddWithValue("@FileName", fileName);
conn.Open();
cmd.ExecuteNonQuery();
}
}
return View();
}
問題が何であるかについては、エラーが自明であることはわかっていますが、ePub ファイル形式を受け入れるようにコードを変更する方法がわかりません。
どんな助けでも大歓迎です:)