Joy Sikdar Ответов: 0

Опубликованный файл всегда становится нулевым в контроллере


Моя модель такова

[RegularExpression(@"([a-zA-Z0-9\s_\\.\-:])+(.png|.jpg|.gif)$", ErrorMessage = "Only Image files allowed.")]
		public HttpPostedFileBase Logo { get; set; }


мое частичное мнение таково

@Html.ValidationSummary(true)
@using SocialMediaAnalytics.Web.Models;
@model SocialMediaAnalytics.Web.Models.Account.RegistrationModel
@using (Html.BeginForm("CreateDatabase", "Settings", FormMethod.Post, new { id = "formAddDatabaseandWorkSpace", encType = "multipart/form-data" }))
{
<div class="col-sm-12">
				<div class="form-group">
					<label>Logo</label>
					@Html.TextBoxFor(m => m.Logo, new { type = "file" })
				</div>
			</div>
		</div>
	</div>
	<div class="modal-footer">
		<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
		<button type="submit" class="btn btn-primary" id="btnAddDB">Save</button>

	</div>
}



а контроллер есть
[HttpPost]
		public JsonResult CreateDatabase(RegistrationModel model)
		{
			try
			{
                          else if(model.Logo!=null)
					{
					LogoUpload(model);
					return Json(new { title = "Upload Logo", 
                         message = "Logo uploaded successfully", type = "Success" });
						
					}
}
</pre

but the value for "Logo" in model is always null even after browsing the image.

What I have tried:

I have tried with  type instead of @Html.TextBoxFor() but its getting null everytime.

F-ES Sitecore

Логотип-это текстовое поле? Это должно быть "<input type=file". Google "upload file mvc", чтобы увидеть некоторые примеры кода основ.

Joy Sikdar

как я могу привязать свою модель к типу ввода?

F-ES Sitecore

Извините, я не видел атрибута type=file :o, который должен работать

Joy Sikdar

да, я тоже так думаю.Но он всегда становится нулевым.

F-ES Sitecore

Я только что попробовал ваш код, и он работает нормально для меня. Проверьте, что больше ничего не мешает, например, код, который вы еще не опубликовали (js и т. д.).

0 Ответов