私はasp.netフレームワークの初心者ですが、実際にそれを学び、適用することを奨励しています。 https://docs.microsoft.com/en-us/aspnet/core/tutorials/razor-pages/razor-pages-startasp.netのコア2、カミソリのページで画像をディスクに取り込む方法
私はそれに従って、すべてが問題なく、私は新しいモデル、テーブルを追加するために渡されます。
public class Movie
{
public int ID { get; set; }
public string Title { get; set; }
public DateTime ReleaseDate { get; set; }
public string Genre { get; set; }
public decimal Price { get; set; }
}
と、以下のプロセスを作成するコードです:
以下public async Task<IActionResult> OnPostAsync()
{
if (!ModelState.IsValid)
{
return Page();
}
_context.Movie.Add(Movie);
await _context.SaveChangesAsync();
return RedirectToPage("./Index");
}
からのセクションです:
<div class="form-group">
<label asp-for="Movie.Price" class="control-label"></label>
<input asp-for="Movie.Price" class="form-control" />
<span asp-validation-for="Movie.Price" class="text-danger"></span>
</div>
は、私たちがある作品のモデルがあるとし
今、私はフォームに新しいフィールドを追加して、 "Cover image"をアップロードしたいので、ユーザーはブラウズして選択することができます画像をカバーして、同じ形式でアップロードします。
私の質問は以下のとおりです。
私は、私は表示または削除するためにそれを使用することができますので、各映画は列 「CoverImage」を持って、DB内のファイル名を格納することだと思います。この良いです アプローチですか?
ファイルを保存するのに最適な場所は何ですか? "wwwroot"または別の フォルダにあるかどうかは関係ありませんか?
画像をアップロードするには、最新の方法はありますか?上のコードの3つのセクションで何を追加すればよいですか?私は検索を行い、多くのアプローチと方法を見つけましたが、私は最高のアプローチであるasp.netの専門家としてあなたから を知る必要があります。
本当にありがとう、ちょうど最後の質問ですが、私はあなたの視点から、画像上でいくつかの検証を行うための関数を追加したい場合、そのような関数を置くのはどうですか?検証関数とGetUniqueName(ヘルパー関数)は、例えば? –