Server.MapPath с МКС

Server.MapPath не показывает мои файлы с IIS 7. Вот мой простой код:

@{
    Layout = null;
}
@{
    string imgPath = Server.MapPath("~/Views/Home/anim.jpg");
}
<img src="@imgPath" />

1 ответ

Папка ~/Views/ не разрешена для прямого доступа. Вы можете поместить ваши статические файлы в папку ~/Content/, и это должно работать.

Я нашел хорошую ветку, обсуждающую это:

/questions/48078832/kak-zaprashivat-staticheskie-fajlyihtml-v-papke-views-v-aspnet-mvc/48078873#48078873

Я считаю, что это лучшее решение, чтобы поместить ваши статические файлы в другую папку, предназначенную для статических файлов. Но если вы хотите хранить статические файлы в папке Views, вы можете сделать это, изменив файл web.config.

По вашему мнению, вам не нужно использовать Server.MapPath(...). Вы просто ссылаетесь на файл с ~ ~ Content/Images/what.jpg в представлении, и оно должно работать. Вы используете server.MapPath только в коде своего сервера, когда вам нужен фактический физический путь к файлу на диске.

Другие вопросы по тегам