Я использую Composite C1 CMS v4.2 Update 1. На некоторых моих страницах, которые используют раздел «Медиа» и некоторые программные изображения из раздела «Медиа», я периодически получаю ширину и высоту, равные 0, для всех изображений, которые выходят. раздела «Медиа», если я специально не укажу ширину и высоту изображений. Ниже приведен пример программно заполненных изображений. Я полагаю, что мог бы попытаться заполнить высоту и ширину с помощью кода, но Composite C1, похоже, делает это с помощью метода MediaURL() ниже, просто в некоторых случаях он делает их равными 0. В разделе «Контент CMS», когда я специально добавляю высоту и ширину, он работает нормально, однако в свойствах изображения WYSIWYG нет диалогового окна высоты и ширины, поэтому вам приходится заходить в источник и редактировать тег IMG вручную. Надеюсь, я делаю что-то серьезное здесь неправильно, потому что кажется, что это будет проблемой для нас.
@{
string folderPath = CurrentPageNode.Url.Substring(10).Replace("/","_");
folderPath = "/" + folderPath;
var images = Data.Get<IImageFile>().Where(image => image.FolderPath == folderPath).OrderBy(image => image.FileName).ToList();
string cssClass = "";
}
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://www.composite.net/ns/function/1.0">
<head>
</head>
<body>
<div class="row">
@foreach (var image in images)
{
if (image.FileName.Length > 11 && image.FileName.ToLower().Substring(0,11) == "application")
{
cssClass = image.FileName.Substring(image.FileName.IndexOf("_")+1).Replace(".png","");
<div class="col-md-12">
<div class="application">
<a href="@image.Description">
<img src="@Html.C1().MediaUrl(image)" alt="@image.Title" />
</a>
<a href="@image.Description">
<div class="squareText @cssClass">@image.Title</div>
</a>
</div>
</div>
}
}
</div>
</body>