C# Ektron库图像不显示;找不到文件路径

C# Ektron库图像不显示;找不到文件路径,c#,image,path,directory,ektron,C#,Image,Path,Directory,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

我有一堆图像存储在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;
    }

}

我想他们不显示的原因是因为我的项目中没有UploadeImage文件夹,而该文件夹位于Ektron中,但我不知道如何更改以使图像显示。

Ektron假定默认情况下图像是本地的

您必须将路径修改为绝对路径,前提是您的Ektron实例是公共的,例如

或:

如果Ektron安装不是公共的,如在3层部署中,那么您有三个选项:

  • 让您的应用程序发出webrequest,实质上充当从Ektron安装到客户端的文件的代理
  • 使用Robocopy或XCopy等工具将文件从Ektron移动到应用程序中。您甚至可以将文件从Ektron服务器升级到项目中。在文档中,展开All并在页面内搜索LibraryStrategy
  • 在IIS中使用网络共享或虚拟目录,以允许应用程序的行为就像文件是项目的本地文件一样,即使它们仍然托管在Ektron中

  • 我建议您在imgsrc属性中插入容器生成的URL之一,看看是否会得到显示的图像。我怀疑需要设置URL才能正确访问文件夹。请进一步解释您的设置。你说你没有上传的图像文件夹?您不是在Ektron网站中运行此代码吗?
    <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