您好我从之前的网络应用程序中获取此代码。我只是复制并粘贴到一个新的,但图像没有显示在新网站中。我甚至键入代码来显示路径,它显示确定,显示ID,它显示确定和产品的所有属性,他们都显示确定但图像不显示。当F5我的应用程序网站运行正常。但是当图像无法加载时,它只显示微小的图标而不是图像。但是当从浏览器使用检查器时,src属性具有图像的正确路径。 我找不到有什么不对 这是代码
这是类别
namespace Mysite.Models
{
public class Category
{
//[ScaffoldColumn(false)]
public int CategoryID { get; set; }
[Display(Name = "Category Name")]
public string CategoryName { get; set; }
//[Display(Name = "Product Description")]
public string Description { get; set; }
public string ImagePath { get; set; }
public virtual ICollection<Product> Products { get; set; }
}
}
这是产品类
namespace Mysite.Models
{
public class Product
{
//[ScaffoldColumn(false)]
public int ProductID { get; set; }
[Required, StringLength(100), Display(Name = "Product Name")]
public string ProductName { get; set; }
[Required, StringLength(10000), Display(Name = "Product Description"), DataType(DataType.MultilineText)]
public string Description { get; set; }
public string ImagePath { get; set; } // Here is the image path that I want to show
public int? CategoryID { get; set; }
public virtual Category Category { get; set; }
}
}
这是一个CategoryController,它有一个方法Browse in INCLUDES Products
namespace Mysite.Controllers
{
public class CategoriesController : Controller
{
private ProductContext db = new ProductContext();
public ActionResult Browse(string categories)
{
var categoriaModel = db.Categories.Include("Products")
.SingleOrDefault(c => c.CategoryName == categories);
return View(categoriaModel);/*(db.Categories.C)*/
}
这是一个简化的视图来测试我是否想要在浏览器中显示,实际显示
@model Mysite.Models.Category
@{
ViewBag.Title = "Browse";
}
<h2>Browse</h2>
@foreach(var item in Model.Products) {
<p>@item.ProductName , @item.ProductID , @item.ImagePath</p>
<img src="@item.ImagePath"/>
}
但这是它实际显示的内容
Horizontal Faux Wood , 1 , Content/ProductImages/woodblind2.jpg /*small non-loaded picture icon here*/
Horizontal Real Wood , 2 , Content/ProductImages/woodblinds1.jpg /*small non-loaded picture icon here*/
Aluminium mini blinds , 10 , Content/ProductImages/aluminiumminiblind.jpg /*small non-loaded picture icon here*/
这个代码我在另一个网站上工作。 我仔细检查图像文件夹,路线,一切正常
答案 0 :(得分:0)
试试这个
<img src= "@Url.Content(item.ImagePath)" alt="Image" />
答案 1 :(得分:0)
将其更改为:
<img src="@Url.Content("~/" + item.ImagePath)"/>
答案 2 :(得分:0)
您在syncMaster
之前错过了/
来指定ImagePath
,我宁愿将root
变量从另一个string
中删除。无论如何,那是我的方法
答案 3 :(得分:0)
<img src="~/@item.ImagePath" />
基本上,~
符号允许您引用与根路径相关的文件。