问题
I have 2 image files in my App_Data directory and I want to show them in my view like this:
@foreach (var media in Model)
{
<div class="col-lg-3 col-md-4 col-xs-6 thumb">
<a class="thumbnail"><img src="@Url.Content("~/App_Data/uploads/" + @media.URL)" alt="image" /></a>
</div>
}
When I check the link in the browser I get this :
<img src="/App_Data/uploads/Warnings.png" alt="image">
It says he can't find the image. How can I set the correct link?
回答1:
The App_Data folder is a special .NET "system" folder in which IIS is configured to not allow the contents of that folder to be visible to web users. Create a different folder to store your images as you really should not allow App_Data to be web visible (if you can even change the setting).
From iis.net:
For example, on Web servers that are hosting ASP.NET content, IIS 7 blocks several of the ASP.NET-related paths for you; Web.config, bin, App_Code, etc. Blocking these URL segments reduce the chance of an attacker being able to exploit these URLs for information.
来源:https://stackoverflow.com/questions/20688022/show-image-stored-in-app-data