私はMVCに比較的慣れていないので、SQL Serverデータベースにファイル(具体的には画像)をアップロードする必要はありませんでした。正直なところ、ここで何をしているのかわかりません。
これが私がこれまでに持っているものです-これが私のドメインモデルです(私のモデルに注意してくださいHttpPostedFileBase
-これは私がアップロードしたいものです):
public class Profile
{
[Key]
public int Id { get; set; }
[Required(ErrorMessage="Years of service is required")]
[DisplayName("Years Service:")]
public int YearsService { get; set; }
[DataType(DataType.MultilineText)]
[DisplayName("Notable Achivements:")]
public string NotableAchivements { get; set; }
[Required(ErrorMessage = "Technical skills are required")]
[DataType(DataType.MultilineText)]
[DisplayName("Technical Skills:")]
public string TechnicalSkills { get; set; }
[DisplayName("Upload Image: ")]
public HttpPostedFileBase Photo { get; set; }
public string CreatedBy { get; set; }
public DateTime CreatedDate { get; set; }
public string ModifiedBy { get; set; }
public DateTime ModifiedDate { get; set; }
}
そして、これが私の見解です:
@using (Html.BeginForm("Create", "Profiles", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
<div class="editor-label">
@Html.LabelFor(model => model.YearsService)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.YearsService)
@Html.ValidationMessageFor(model => model.YearsService)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.NotableAchivements)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.NotableAchivements)
@Html.ValidationMessageFor(model => model.NotableAchivements)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.TechnicalSkills)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.TechnicalSkills)
@Html.ValidationMessageFor(model => model.TechnicalSkills)
</div>
<input type="file" name="photo" />
<input type="submit" name="Submit" id="Submit" value="Upload" />
}
私が間違っていることが明白な何かがあることを願っています。SQL Serverデータベースに簡単なファイルをアップロードする方法について誰かがアドバイスを提供できますか?