首先,我对mvc并不熟悉。但我已经在Umbraco 7.0.3中构建了一个组合,我通过多媒体选择器选择图像,然后在页面上循环它们。我需要帮助的是检查图像是纵向还是横向,并基于设置的两个不同的类。
<div id="container" class="photos clearfix">
@{
var mediaID1 = Model.Content.GetProperty("images").Value.ToString().Split(',');
}
@foreach (var mediaID in mediaID1)
{
var media = umbraco.uQuery.GetMedia(mediaID);
<div class="photo">
<a href="@media.GetImageUrl()" rel="shadowbox[gallery]"><img class="small-image" src="@media.GetImageUrl()" /></a>
</div>
}
</div>
像这样的东西
<div id="container" class="photos clearfix">
@{
var mediaID1 = Model.Content.GetProperty("images").Value.ToString().Split(',');
}
@foreach (var mediaID in mediaID1)
{
var media = umbraco.uQuery.GetMedia(mediaID);
if(portratit)
{
<div class="photo">
<a href="@media.GetImageUrl()" rel="shadowbox[gallery]"><img class="small-image" src="@media.GetImageUrl()" /></a>
</div>
}
else
{
<div class="photo w2">
<a href="@media.GetImageUrl()" rel="shadowbox[gallery]"><img class="small-image" src="@media.GetImageUrl()" /></a>
</div>
}
}
</div>
显然,我明白我不能这样写,但只想澄清我的目标。
谢谢, 纳斯
答案 0 :(得分:0)
我明白了。
@foreach (var mediaID in mediaID1)
{
var media = Umbraco.TypedMedia(mediaID);
if (media != null)
{
int width = media.GetPropertyValue<int>("umbracoWidth");
int height = media.GetPropertyValue<int>("umbracoHeight");
if (@width < @height)
{
<div class="photo w2">
<a href="@media.Url()" rel="shadowbox[gallery]"><img class="small-image" src="@media.Url()" /></a>
</div>
}
else
{
<div class="photo">
<a href="@media.Url()" rel="shadowbox[gallery]"><img class="small-image" src="@media.Url()" /></a>
</div>
}
}
}