Итак, я пытаюсь создать приложение, которое отображает изображения, сохраненные в определенной папке. Каждый пользователь имеет другую папку на диске C, из которой будут извлекаться изображения.Отображение изображений с пути C или изменение там, где виртуальный путь указывает на
В настоящее время я использую:
@foreach (var imgPath in Directory.GetFiles("C:/Users/me/documents", "*.*"))
{
var img = new FileInfo(imgPath);
<img src="@Url.Content(String.Format("C:/Users/me/documents/{0}", img.Name))" />
}
Однако это не выводит изображение из-за пути C, но рыщут в Интернете привело меня нигде, кроме кого-то говорят, что вы могли бы сделать виртуальный путь и указать его к физическому, но я не мог найти учебник по этому поводу.
Я также хотел бы внести переменную типа me
, поскольку каждый пользователь будет иметь свою собственную папку, но я не уверен, что это может быть обработано в контроллере.
Ваши папки должны быть относительными/виртуальными путями (с использованием 'Server.MapPath()'), а 'me' может быть сгенерирован на основе идентификатора пользователя. –
@StephenMuecke Я как бы понял, но как я могу сопоставить виртуальный путь с физическим? Если я создаю новую папку в Visual Studio, она автоматически создаст путь. –
Начните с создания папки в приложении для файлов, например 'Users'. Затем для каждого пользователя вы можете программно добавлять подпапки на основе того, что однозначно идентифицирует их (возможно, когда они регистрируются?). Затем вы можете использовать 'Server.MapPath()' для получения абсолютного пути к папке - 'Server.MapPath (« ~/Users/User1 »)' –