Asp.net mvc 如何在多个视图中动态实现图像?
我正在寻找一种基于Asp.net mvc 如何在多个视图中动态实现图像?,asp.net-mvc,Asp.net Mvc,我正在寻找一种基于Placement\u Position和Region动态显示图像到不同视图的方法 Placement视图,其中显示表中的所有内容 这些观点之间没有联系 我很困惑,如何实现这个场景。有人请帮帮我 在Employee视图中,如果区域是1,我想在顶部显示图像1,如果区域是2 控制器 public ActionResult Placement() { var model = context.Placement.ToList();
Placement\u Position
和Region
动态显示图像到不同视图的方法
Placement
视图,其中显示表中的所有内容
这些观点之间没有联系
我很困惑,如何实现这个场景。有人请帮帮我
在Employee
视图中,如果区域是1
,我想在顶部显示图像1
,如果区域是2
控制器
public ActionResult Placement()
{
var model = context.Placement.ToList();
return View(model);
}
位置视图
<table>
<tr>
<th>
@Html.DisplayNameFor(m => m.Id)
</th>
<th>
@Html.DisplayNameFor(m => m.Placement_Position)
</th>
<th>
@Html.DisplayNameFor(m => m.Region)
</th>
<th>
@Html.DisplayNameFor(m => m.Path)
</th>
</tr>
@foreach (var item in Model)
{
<tr>
@Html.DisplayFor(modelItem => item.Id)
<td>
@Html.DisplayFor(modelItem => item.Placement_Position)
</td>
<td>
@Html.DisplayFor(modelItem => item.Region)
</td>
<td>
@Html.Image(item.Path, "Image")
</td>
</tr>
}
</table>
@DisplayNameFor(m=>m.Id)
@DisplayNameFor(m=>m.Placement\u位置)
@DisplayNameFor(m=>m.Region)
@DisplayNameFor(m=>m.Path)
@foreach(模型中的var项目)
{
@DisplayFor(modeleItem=>item.Id)
@DisplayFor(modelItem=>item.Placement\u位置)
@DisplayFor(modelItem=>item.Region)
@Html.Image(item.Path,“Image”)
}
您可以使用LINQ为每个控制器编写查询并返回IList
:
因此,在员工视图中:
public ActionResult Employee()
{
IList<ClsPlacement> plcList = new List<ClsPlacement>();
var query= from m in context.Placement
select m;
var plc= query.ToList();
foreach(var plcData in plc)
{
if(plcData.Placement_Position=="A_Top")
{
plcList.Add(new ClsPlacement()
{
Id= plcData.Id,
Placement_Position= plcData.Placement_Position,
Path = plcData.Path ,
Region= plcData.Region
});
}
}
return View(plcList);
}
public ActionResult Employee()
{
IList plcList=新列表();
var query=来自context.Placement中的m
选择m;
var plc=query.ToList();
foreach(plc中的var plcData)
{
如果(plcData.Placement\u Position==“A\u Top”)
{
plcList.Add(新的ClsPlacement()
{
Id=plcData.Id,
Placement\u Position=plcData.Placement\u Position,
Path=plcData.Path,
Region=plcData.Region
});
}
}
返回视图(plcList);
}
在你看来,你可以这样写:
@foreach (var item in Model)
{
<div class="col-md-5">
<img src="@Url.Content(String.Format("~/Content/Place/{0}{1}{2}", "Atop_",item.Region,".jpg"))" />
</div>
}
@foreach(模型中的变量项)
{
}
对于客户视图也是如此 但有一个小问题。在Employee Controller中,他们正在返回自己的模型,因此如何才能在同一视图中返回
plcList
。谢谢,请帮帮我。我有两个模型,一个用于员工,另一个用于安置。在这里,您使用了第二个并返回了视图。但是,这实际上是它自己的观点。我不知道如何在Employee视图中返回此数据。它从ClsEmployee model=new ClsEmployee()返回模型代码>`返回视图(模型);`@mvc如果它们有这样的外键,您仍然可以使用linq查询将它们连接起来:var query=(来自context.BuyFactors中的b在context.BuyFactors中连接d在context.BuyFactorDetail上..选择new{BuyFactorId=b.BuyFactorId,….BuyFactorDetailId=d.BuyFactorDetailId,…});
@foreach (var item in Model)
{
<div class="col-md-5">
<img src="@Url.Content(String.Format("~/Content/Place/{0}{1}{2}", "Atop_",item.Region,".jpg"))" />
</div>
}