2013-04-09 3 views
2

미디어 라이브러리의 이미지 속성을 가진 노드가 있습니다. 속성에는 미디어 이미지의 ID가 포함됩니다. 이 ID에서 Media 객체를 가져와야합니다. Umbraco 4.x에서는 다음을 수행 할 수 있습니다.Umbraco 6.x .Net 컨트롤 미디어 ID :

var image = new Media(imageId); 

어떤 이유로이 방법은 실종 상태입니다. 내가 찾은 유일한 것은 미디어 라이브러리에서 이미지의 이름을 가져 오는 것입니다. 하지만 나는 이드 만 만난다.

이것은 .Net 컨트롤을위한 것으로 페이지에서 사용할 것입니다. 이미지의 전체 경로를 가져 와서 이미지 태그의 SRC 필드에서 사용할 수 있습니다.

답변

7

소스에서 파고 들고 대답을 찾았습니다. 버전 6.x에서 WebControl 내에서 ID로 미디어 객체를 얻으려면 다음을 수행해야합니다 :

다음
var mediaObject = ApplicationContext.Current.Services.MediaService.GetById(mediaId); 

당신이 개체에서 다음과 같은 특성을 얻을 수 있습니다 :

var filePath = mediaObject.Properties["umbracoFile"].Value as string; 
var width = mediaObject.Properties["umbracoWidth"].Value as int?; 
var height = mediaObject.Properties["umbracoHeight"].Value as int?; 
var bytes = mediaObject.Properties["umbracoBytes"].Value as int?; 
var fileExtension = mediaObject.Properties["umbracoExtension"].Value as string; 

희망이 다른 사람을 돕는다!

3

당신은 또한 현재 Umbraco의 일부

Media mediaObject = umbraco.uQuery.GetMedia(mediaId); 
인 uQuery 라이브러리를 사용할 수 있습니다
관련 문제