none
veritabanındaki resim sayfada nasıl gösterilir RRS feed

  • Soru

  • Merhaba.

    Veritabanına kayıtlı resmi sayfada göstermek istiyorum.Veri tabanına ismini kaydettim.Dosya ismini eval ile çağırıp, kaydedilen klasörden bulup göstermesini istiyorum. Source unu şöyle yazdım ama olmadı.

     <asp:Image ID="Image1" runat="server" src="<%# Eval("HaberResmi",)"resimler/~") %>"/>

    Resmin ismi HaberResmi sütununda, resimse "resimler" isimli klasörde kayıtlı. Source'u nasıl vermeliyim?Yardımcı olursanız sevinirim.

    7 Ocak 2014 Salı 09:16

Yanıtlar

  • Sonunda başardım. Sanırım datatable dataadapter gibi nesneleri kullanmadığım için çalışmamış. Repeater in tasarımı normal sayfada böyle olacak:

    <asp:Repeater ID="Repeater" runat="server">
            <ItemTemplate>
                <img src='/resimler/<%#Eval("ResimIsmi") %>' />
            </ItemTemplate>
        </asp:Repeater>

    Kod sayfasında da böyle olacak:

    SqlConnection baglanti = new SqlConnection(@"server=PC-BILGISAYAR\SQLEXPRESS; Database=Haber; Trusted_Connection=True");
            SqlCommand goster = new SqlCommand("select ResimIsmi from HaberResmi order by ResimIsmi asc", baglanti);
            DataTable dt = new DataTable();
            SqlDataAdapter da = new SqlDataAdapter();
            baglanti.Open();
            da.SelectCommand = goster;
            da.Fill(dt);
            Repeater.DataSource = dt;
            Repeater.DataBind();
            baglanti.Close();

    YARDIMCI OLMAYA ÇALIŞAN HERKESE TEŞEKKÜR EDERİM.

    10 Ocak 2014 Cuma 14:37

Tüm Yanıtlar

  • Merhaba;

    <asp:Image ID="Image1" runat="server" src="<%# "~/Resimler/" + Eval("HaberResmi") %>"/>

    Doğru anladıysam böyle olmalı.


    Microsoft bu servisi kullanıcılarına yardım etme, Microsoft urunleri ve teknolojileriyle ilgili bilgi bankasını genişletme amacıyla ucretsiz sunmaktadır. Bu icerik olduğu gibi benim tarafımdan hazırlanmış olup Microsoft tarafından herhangi bir sorumluluk ustlenildiği anlamına gelmez. Iletişim: Mail Gönder

    7 Ocak 2014 Salı 09:38
    Moderatör
  • <asp:Image ID="Image1" runat="server" src="<%# Eval("HaberResmi", "/resimler/{0}") %>"/>
    şeklinde. Yanlız sorunuz yanlış resimler databasede değil klasörde (o:

    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC


    7 Ocak 2014 Salı 09:55
    Moderatör
  • Yardımcı olmaya çalıştığınız teşekkür ederim.Ama maalesef olmadı.
    7 Ocak 2014 Salı 09:59
  • olmayan nedir? kaynağı görüntüleyip img tagının burada paylaşırmısın

    Update: src yerine ImageURL kullanın

    <asp:Image ID="Image1" runat="server" ImageUrl="<%# Eval("HaberResmi","/resimler/{0}") %>"/>


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC



    7 Ocak 2014 Salı 10:01
    Moderatör
  • <asp:Repeater ID="Repeater" runat="server">
            <ItemTemplate>
              <asp:Image ID="Image1" runat="server" ImageUrl="<%# Eval("HaberResmi","/resimler/{0}") %>"/>

                </ItemTemplate>
        </asp:Repeater>

    Kod sayfasındaki kodsa şöyle:

    SqlConnection baglanti = new SqlConnection(@"server=PC-BILGISAYAR\SQLEXPRESS; Database=Haber; Trusted_Connection=True");
     SqlCommand goster = new SqlCommand("select * from HaberResmi", baglanti);
     baglanti.Open();
     SqlDataReader dr = goster.ExecuteReader();
     Repeater.DataSource = dr;
     Repeater.DataBind();
     baglanti.Close();

                 Parse error çıkıyor.

    7 Ocak 2014 Salı 10:15
  • Tablonun adını yazmışsınız (o:

    Tabloda resim yollarını kaydettiğiniz alanın adı ne ise onu yazın;

    <asp:Image ID="Image1" runat="server" ImageUrl="<%# Eval("alan adı buraya","/resimler/{0}") %>"/>


    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    7 Ocak 2014 Salı 10:58
    Moderatör
  • Olmadı. Tablonun ismi ile resim isimlerini kaydettiğim tablo sütununun ismi aynıydı. Hata ondadır diye sutün ismini değiştirdim. İsmini oraya yazdım. Yine parse error verdi.


    8 Ocak 2014 Çarşamba 07:45
  • Çift tırnak kullanmışsınız. ImageUrl=" ... "   daki çift tırnakları tek tırnak ile değiştirin.

    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    8 Ocak 2014 Çarşamba 07:48
    Moderatör
  • Merhaba ,

    Sanırım Grid içerisinde resim göstrmek istiyorsuınuz ?


    <%# Eval("alan adı buraya"," /resimler/{0}") %> bu kod çalışmaz çünkü keskin (Absolute Path) belirtmektedir.

    Bunun yerine :

    ResolveClientUrl(Eval("alan adı buraya"," ~/resimler/{0}")) 

    Bu bulunduğun sayfaya göre URL oluşturacağı için bunu deneyebilirsin.

    8 Ocak 2014 Çarşamba 20:21
  • Merhaba ,

    Sanırım Grid içerisinde resim göstrmek istiyorsuınuz ?


    <%# Eval("alan adı buraya"," /resimler/{0}") %> bu kod çalışmaz çünkü keskin (Absolute Path) belirtmektedir.

    Bunun yerine :

    ResolveClientUrl(Eval("alan adı buraya"," ~/resimler/{0}")) 

    Bu bulunduğun sayfaya göre URL oluşturacağı için bunu deneyebilirsin.

    yanlış. Absolute diye bişeyden söz edilemez, Pyschal ya da Virtual path dan söz edilebilir. Veri tabanında dosya isimleri kayıtlıysa ve bu isimle dosyalar resimler klasöründeyse yukarıdaki kod çalışır. ImageUrl virtual path ile çalışır.

    e-mail: onay[nokta]yalciner[at]hotmail[nokta]com
    MCC

    8 Ocak 2014 Çarşamba 20:29
    Moderatör
  • Sonunda başardım. Sanırım datatable dataadapter gibi nesneleri kullanmadığım için çalışmamış. Repeater in tasarımı normal sayfada böyle olacak:

    <asp:Repeater ID="Repeater" runat="server">
            <ItemTemplate>
                <img src='/resimler/<%#Eval("ResimIsmi") %>' />
            </ItemTemplate>
        </asp:Repeater>

    Kod sayfasında da böyle olacak:

    SqlConnection baglanti = new SqlConnection(@"server=PC-BILGISAYAR\SQLEXPRESS; Database=Haber; Trusted_Connection=True");
            SqlCommand goster = new SqlCommand("select ResimIsmi from HaberResmi order by ResimIsmi asc", baglanti);
            DataTable dt = new DataTable();
            SqlDataAdapter da = new SqlDataAdapter();
            baglanti.Open();
            da.SelectCommand = goster;
            da.Fill(dt);
            Repeater.DataSource = dt;
            Repeater.DataBind();
            baglanti.Close();

    YARDIMCI OLMAYA ÇALIŞAN HERKESE TEŞEKKÜR EDERİM.

    10 Ocak 2014 Cuma 14:37