VS2012 不显示控制器上传的图像
VS2012 not showing images uploaded by controller
我创建了一个上传图片的页面,效果很好,但是当我想在视图中显示上传的图片时,我做不到。
我的图片存储在Images/products/{产品名称}/
鉴于我写了
@Foreach(var item in product.images){
<img src="~/images/products/{productname}/@item.name" />
}
//我的名字拼写正确
在调试中 src 具有正确的值但不显示图像,
但是当我从内容文件夹中给出 URL 时,它会显示该图像,
即使在解决方案资源管理器中。 VS 不显示通过控制器代码上传的图像和创建的文件夹,
您可能需要添加对 Images/products{productName} 文件夹的权限。
- 打开 IIS 管理器
- 单击提供图像的网站或应用程序
- 点击右边的“基本设置link-记下App
池名称并取消该对话框。
- 单击左侧服务器树中的应用程序池在列表中
应用程序池 - 记下与您同名的应用程序池的标识
在步骤 3 中注明
- 现在在 Windows 资源管理器中,您可以右键单击图像文件夹,
选择属性,然后单击安全选项卡。找出
与应用程序池使用的身份关联的用户。如果不是
那么就没有权限 如果它在那里,点击它然后
查看权限窗格以确保选中 "Read"(或 write/modify,如果需要,甚至完全控制)。
如果您在 Images 文件夹中手动添加子文件夹,则需要重复该步骤
最佳做法是将图像保存在内容文件中,因为它在默认情况下已经具有读取权限。或者另一种方法是您可以将文件保存在 App_Data 上或将文件托管在云上(为了更好的安全性,显示时间限制)。
我创建了一个上传图片的页面,效果很好,但是当我想在视图中显示上传的图片时,我做不到。
我的图片存储在Images/products/{产品名称}/
鉴于我写了
@Foreach(var item in product.images){
<img src="~/images/products/{productname}/@item.name" />
}
//我的名字拼写正确
在调试中 src 具有正确的值但不显示图像, 但是当我从内容文件夹中给出 URL 时,它会显示该图像, 即使在解决方案资源管理器中。 VS 不显示通过控制器代码上传的图像和创建的文件夹,
您可能需要添加对 Images/products{productName} 文件夹的权限。
- 打开 IIS 管理器
- 单击提供图像的网站或应用程序
- 点击右边的“基本设置link-记下App 池名称并取消该对话框。
- 单击左侧服务器树中的应用程序池在列表中 应用程序池 - 记下与您同名的应用程序池的标识 在步骤 3 中注明
- 现在在 Windows 资源管理器中,您可以右键单击图像文件夹, 选择属性,然后单击安全选项卡。找出 与应用程序池使用的身份关联的用户。如果不是 那么就没有权限 如果它在那里,点击它然后 查看权限窗格以确保选中 "Read"(或 write/modify,如果需要,甚至完全控制)。
如果您在 Images 文件夹中手动添加子文件夹,则需要重复该步骤
最佳做法是将图像保存在内容文件中,因为它在默认情况下已经具有读取权限。或者另一种方法是您可以将文件保存在 App_Data 上或将文件托管在云上(为了更好的安全性,显示时间限制)。