Я пытаюсь создать изображение профиля пользователя в проекте ASP MVC5. Я добавил страницу, которая называется changepicture.cshtml
, и отобразит изображение текущего пользователя.Показать изображение, загруженное на сервер
У меня есть функция загрузки, которая сделает снимок, который кто-то загрузит, как hank.jpg
, и переименуйте его на это users_id.jpg
.
Например:
System.Data.Entity.DynamicProxies.ApplicationUser_9C8230B38B954135385F2B0311EAC02ED8B95C4D504F8424BA3ED79B37F0AAAF.jpg
Я хотел бы, чтобы отобразить каждого пользователя индивидуальный рисунок на странице, захватывая там идентификатор пользователя и добавления. jpg, как бы я это сделал?
changepicture.cshtml
@model KidRoutineLogging.Models.ChangePictureViewModel
@{
ViewBag.Title = "Change Picture";
}
<h2>@ViewBag.Title.</h2>
<h4>Your Current Picture : @Html.ViewBag.CurrentPicture</h4>
<img src="@Url.Content("~/uploads/hank.jpg")" />
<br />
<br />
@using (Html.BeginForm("", "Home", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
<input type="file" name="FileUpload1" /><br />
<input type="submit" name="Submit" id="Submit" value="Upload" />
}
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
}
HomeController.cs
public async Task<ActionResult> Index()
{
foreach (string upload in Request.Files)
{
var user = await UserManager.FindByIdAsync(User.Identity.GetUserId());
string path = AppDomain.CurrentDomain.BaseDirectory + "uploads/";
//string filename = Path.GetFileName(Request.Files[upload].FileName);
//Request.Files[upload].SaveAs(Path.Combine(path, filename));
Request.Files[upload].SaveAs(Path.Combine(path, user + ".jpg"));
}
return View();
}
Ваш путь должен быть 'Request.Files [upload] .SaveAs (Path.Combine (путь, user.Id +" .jpg "));'. Я не 100%, какая часть вопроса? Отображение изображения или сохранение изображения с идентификатором пользователя в качестве части имени файла? –
Моя проблема показывает этот загруженный файл. – SpruceTips