2012-06-08 2 views
0

Я пытаюсь загрузить из базы данных SQL Server изображения галереи управления слайд-шоу Galleria http://galleria.io/. Я разместил элемент управления Galleria на странице ASPX.Управление слайд-шоу Galleria: Загрузка изображений галереи из поля базы данных varbinary на страницу ASP.NET

Я стараюсь, чтобы решение ListView было рекомендовано в старой должности: Using Galleria jQuery plugin with an asp.net ListView , но это не работает. Кто-нибудь знает, действительно ли можно загружать изображения в элемент управления Galleria из базы данных? Если да, то какой тип данных должен иметь поле изображения? Я пробовал как varbinary (фактическое изображение), так и nvarchar (только путь изображения), ни одна из них не работает. Страница просто висела.

Вот мой ASPX код:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Aircraftpedia_GalleriaDB.aspx.cs" 
Inherits="Library_Aircraftpedia_GalleriaDB" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
    <head runat="server"> 
    <title></title> 
    <script type="text/javascript" src="../_js/slider_jQueryUI/jquery-1.6.2.min.js"></script> 
    <script type="text/javascript" src="../_js/galleria/galleria-1.2.7.min.js"></script> 
    </head> 
    <body> 
<asp:SqlDataSource ID="dsSelectAllAircraftpedia" runat="server" ConnectionString="<%$ ConnectionStrings:MYDB%>" 
SelectCommand="cda_Aircraftpedia_SelectAll" SelectCommandType="StoredProcedure" 
ProviderName="<%$ ConnectionStrings:MYDB.ProviderName %>"></asp:SqlDataSource> 
<asp:ListView runat="server" ID="lvw"> 
<LayoutTemplate> 
    <div id="gallery"> 
     <asp:PlaceHolder ID="itemPlaceholder" runat="server"></asp:PlaceHolder> 
    </div> 
</LayoutTemplate> 
<ItemTemplate> 
    <img id="photoAlbumPhotos" src='<%# Eval("AcImage") %>' alt="Image Not Found"  class="photoAlbumPhotos" /> 
</ItemTemplate> 
</asp:ListView> 
<script type="text/javascript"> 
$(document).ready(function() { 
    Galleria.loadTheme('../_js/galleria/themes/classic/galleria.classic.min.js'); 
    $("#gallery").galleria({ 
     width: 700, 
     height: 500 
    }); 
});   
</script> 
</body> 
</html> 

И мой C# код:

protected void Page_Load(object sender, EventArgs e) 
{ 
    this.lvw.DataSource = this.dsSelectAllAircraftpedia; 
    this.lvw.DataBind(); 
} 

Пожалуйста, дайте мне знать, если у вас есть какие-либо идеи о том, как сделать этот код работать, или если у вас есть еще один решение рекомендовать.

спасибо.

ответ

0

Я автор, поэтому это, безусловно, предвзято, но я думаю, вы должны проверить проект http://imageresizing.net/. Он предлагает плагин интеграции SQL, который должен позволить вам эффективно работать с блоками SQL с кэшированием дисков и занимает всего несколько минут.

В качестве бонуса он позволит вам легко изменять размеры всех изображений, чтобы они соответствовали определенному набору ограничений, что может быть очень удобно.

 Смежные вопросы

  • Нет связанных вопросов^_^