2014-10-20 80 views
0

我有一堆存儲在Ektron庫中的圖像。我試圖在幻燈片放映中的一個網頁上顯示這些圖像。下面是我有:Ektron庫圖像不顯示;找不到文件路徑

public partial class WebAssets_UserControls_uxSlideShow : System.Web.UI.UserControl 
{ 
    public List<String> images { get; set; } 

    protected void Page_Load(object sender, EventArgs e) 
    { 
     List<LibraryData> libraryImageList = GetLibraryDataList(1); 

     var imageList = (from im in libraryImageList 
      where im.FolderName == "Alumni" 
      select im).ToList(); 

     var imageUrls = imageList.Select(image => image.FileName).ToList(); 

     SlideShowRepeater.DataSource = imageUrls; 
     SlideShowRepeater.DataBind(); 

    } 

    private List<LibraryData> GetLibraryDataList(int libraryTypeId) 
    { 
     LibraryManager libraryManager = new LibraryManager(ApiAccessMode.LoggedInUser); 
     LibraryCriteria criteria = new LibraryCriteria(LibraryProperty.Id, EkEnumeration.OrderByDirection.Descending); 
     criteria.AddFilter(LibraryProperty.TypeId, CriteriaFilterOperator.EqualTo, libraryTypeId); 
    // criteria.AddFilter(LibraryData.FolderName, CriteriaFilterOperator.EqualTo, libraryFolderName); 
     List<LibraryData> libraryDataList = libraryManager.GetList(criteria); 
     return libraryDataList; 
    } 

} 

和HTML ...

<div id="slideShowImages" class="flexslider"> 
    <ul class="slides"> 
     <asp:Repeater ID="SlideShowRepeater" runat="server"> 
      <ItemTemplate> 
       <li> 
        <img alt="Alumni Events" src="<%# Container.DataItem %>" height="240" width="632" /> 
       </li> 
      </ItemTemplate> 
     </asp:Repeater> 
    </ul> 
</div> 

圖片網址,我拉不工作,雖然。找不到路徑。對於圖像的路徑是這樣的:

/uploadedimages/Alumni/001.jpg 

我的身影,他們選擇了不顯示的原因是因爲我沒有一個uploadedimages文件夾在我的項目,而該文件夾位於曄,不過我還是要說不知道要改變圖像來顯示圖像。

+0

我建議你在img src屬性中插入一個容器生成的URL,看看是否會得到顯示的圖像。我懷疑需要設置URL才能正常訪問文件夾。 – Brinky 2014-10-20 20:27:38

+0

請解釋一下你的設置。你說你沒有uploadedimages文件夾?你是不是在Ektron網站上運行這個代碼? – 2014-10-21 08:53:31

回答

1

Ektron認爲圖像默認爲本地圖像。

如果您的Ektron實例是公開的,您必須將路徑修改爲絕對路徑,例如, http://www.example.com/uploadedImages/Alumni/001.jpg

或:

如果曄安裝是不公開的,如在3層部署,那麼你有三種選擇:

  1. 讓應用程序作出的WebRequest基本上充當代理服務器將Ektron安裝文件提供給客戶端。
  2. 使用像Robocopy或XCopy這樣的工具將文件從Ektron移動到您的應用程序中。您甚至可以通過Ektron Extension (aka Strategy)將您的Ektron服務器上的文件推廣到您的項目中。在文檔中,展開全部並在頁面內搜索LibraryStrategy
  3. 在IIS中使用網絡共享或虛擬目錄以允許應用程序的行爲就好像文件對您的項目來說是本地的,儘管它們仍在Ektron中託管。