none
hatasız sorun... :)) RRS feed

  • Soru

  • Ürün detayını görüntülemek isterken hiçbir hata almıyorum ancak hiçbr bilgiyi de göremiyorum fakat sayfaya gidiyor ve boş bir sayfa gösteriyor...bunu nasıl çözeriz?teşekkürler...

    Gönderen: (.aspx)

    <asp:DataList ID="dlProducts" runat="server" RepeatColumns="4" Width="100%">
                <ItemTemplate>
                    &nbsp;<div class="product_box">
                        <a href='ProductDetails.aspx?product_id=<%# Eval("ID") %>' title='<%# Eval("Product_Title") %>'>
                            <img src='<%# Eval("Product_Images") %>' alt='<%# Eval("Product_Title") %>' height="160"
                                width="160" /></a>
                        <h4>
                            <a href='ProductDetails.aspx?product_id=<%# Eval("ID") %>' title='<%# Eval("Product_Title") %>'>
                                <%# Eval("Product_Title")%>
                            </a>
                        </h4>
                    </div>
                </ItemTemplate>
            </asp:DataList>
    Alıcı: (.aspx)
    <h3>
            Ürün Detayı</h3>
        <hr />
        <asp:Label ID="lblW" runat="server" Font-Bold="True"></asp:Label>
        <div id="products">
            <br />
            <asp:Image ID="imgProduct" runat="server" ImageUrl='<%# Eval("Product_Images") %>'
                Height="160" Width="160" />
            &nbsp;
            <h4>
                <asp:Label ID="lblProductTitle" runat="server" Text='<%# Eval("Product_Title") %>'></asp:Label>
            </h4>
            <p>
                <asp:Literal ID="litDetails" runat="server" Text='<%# Eval("Product_Details") %>'></asp:Literal></p>
        </div>
    Alıcı: (.cs)
    SqlConnection conn;
        SqlCommand comm;
        SqlDataReader reader;
        string connectionString = ConfigurationManager.ConnectionStrings["CS"].ConnectionString;
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                TakeData();
            }
        }
    
        void TakeData()
        {
            int prdID = Convert.ToInt32(Request.QueryString["product_id"]);
            conn = new SqlConnection(connectionString);
            comm = new SqlCommand("select * from Products where ID=" + prdID, conn);
            //if (prdID > 0)
            //{
            string imagesProduct = imgProduct.ImageUrl;
            string txtTitle = lblProductTitle.Text;
            string txtDetails = litDetails.Text;
    
            try
            {
                conn.Open();
                reader = comm.ExecuteReader();
                if (reader.Read())
                {
                    imagesProduct = reader["Product_Images"].ToString();
                    txtTitle = reader["Product_Title"].ToString();
                    txtDetails = reader["Product_Details"].ToString();
                }
                reader.Close();
            }
            catch (Exception ex)
            {
                lblW.ForeColor = Color.Red;
                lblW.Text = "Bilgilerin detayı yüklenirken hata oluştu!<br/>" + ex.Message;
            }
            finally
            {
                conn.Close();
            }
            //}
        }


    Ace Hood - We On

    Scope Piskopos - Ben 46 Raporlu Bir Deliyim

    Ben başarısız olmadım, sadece işin bu şekilde yapılmayacağının bir çok yolunu buldum ve işin nasıl yapılacağına da bir çok defa yaklaştım.



    • Düzenleyen 232323232323 22 Ağustos 2012 Çarşamba 14:27
    22 Ağustos 2012 Çarşamba 14:24

Yanıtlar

  • <h3>
            Ürün Detayı</h3>
        <hr />
        <asp:Label ID="lblW" runat="server" Font-Bold="True"></asp:Label>
        <div id="products">
            <br />
            <asp:Image ID="imgProduct" runat="server" ImageUrl='<%# Eval("Product_Images") %>'
                Height="160" Width="160" />
            &nbsp;
            <h4>
                <asp:Label ID="lblProductTitle" runat="server" Text='<%# Eval("Product_Title") %>'></asp:Label>
            </h4>
            <p>
                <asp:Literal ID="litDetails" runat="server" Text='<%# Eval("Product_Details") %>'></asp:Literal></p>
        </div>

    Öncelikle Detay sayfasında ki evalleri kaldır. Binding işlemi yapmadığın için onları kullanamazsın. İkinci olarak Setleme işlemi yapmıyorsun yapıyorsanda ben kodunda göremedim.

                    imagesProduct = reader["Product_Images"].ToString();
                    txtTitle
    = reader["Product_Title"].ToString();
                    txtDetails
    = reader["Product_Details"].ToString();

     Burda dataları alıyorsun ama  aşağıda ki gibi setlemiyorsun;

    litDetails.text=txDetails;

    imgProduct.ImageUrl=imagesProduct;

    lblProductTitle.Text=txtTitle;


    Birde eğer nesnelerin o anki değerlerini bir yerde kullanmayacaksan boşuna değişkenlerin başlangıç değerini onlarla setleme.

            string imagesProduct = imgProduct.ImageUrl;
           
    string txtTitle = lblProductTitle.Text;
           
    string txtDetails = litDetails.Text;

           Yerine aşağıda ki kullanımı tercih et.

            string imagesProduct = string.empty;
           
    string txtTitle = string.empty;
           
    string txtDetails = string.empty;


    Kolay Gelsin...

    • Yanıt Olarak İşaretleyen 232323232323 23 Ağustos 2012 Perşembe 08:50
    23 Ağustos 2012 Perşembe 08:16

Tüm Yanıtlar

  • Merhaba  GÇ ;

    Detay sayfasına yönlendirdiğiniz url'leri ;

    <a href='<%# String.Format("ProductDetails.aspx={0}", Eval("ID")) %>'  > 

    olacak şekilde değiştirip bir daha dener misiniz ?

    şayet sorunsuz bir şekilde detail sayfasına gidiyor iseniz debug kontrolü yapmayı denediniz mi ?

    22 Ağustos 2012 Çarşamba 15:02
  • Teşekkür ederim ilgilendiğiniz için....

    sayfaya gitmede sorun yok, sanırım dediğimi siz tam anlayamadınız...benim demek istediğim sayfaya gittiğinde hiçbir veri göstermiyor ancak hiçbir hata da vermiyor...

    breakpoint ile baktığımda tüm verilerin dolduğunu hiçbirşeyin null olmadığını gördüm...


    Ace Hood - We On

    Scope Piskopos - Ben 46 Raporlu Bir Deliyim

    Ben başarısız olmadım, sadece işin bu şekilde yapılmayacağının bir çok yolunu buldum ve işin nasıl yapılacağına da bir çok defa yaklaştım.


    23 Ağustos 2012 Perşembe 06:51
  • <h3>
            Ürün Detayı</h3>
        <hr />
        <asp:Label ID="lblW" runat="server" Font-Bold="True"></asp:Label>
        <div id="products">
            <br />
            <asp:Image ID="imgProduct" runat="server" ImageUrl='<%# Eval("Product_Images") %>'
                Height="160" Width="160" />
            &nbsp;
            <h4>
                <asp:Label ID="lblProductTitle" runat="server" Text='<%# Eval("Product_Title") %>'></asp:Label>
            </h4>
            <p>
                <asp:Literal ID="litDetails" runat="server" Text='<%# Eval("Product_Details") %>'></asp:Literal></p>
        </div>

    Öncelikle Detay sayfasında ki evalleri kaldır. Binding işlemi yapmadığın için onları kullanamazsın. İkinci olarak Setleme işlemi yapmıyorsun yapıyorsanda ben kodunda göremedim.

                    imagesProduct = reader["Product_Images"].ToString();
                    txtTitle
    = reader["Product_Title"].ToString();
                    txtDetails
    = reader["Product_Details"].ToString();

     Burda dataları alıyorsun ama  aşağıda ki gibi setlemiyorsun;

    litDetails.text=txDetails;

    imgProduct.ImageUrl=imagesProduct;

    lblProductTitle.Text=txtTitle;


    Birde eğer nesnelerin o anki değerlerini bir yerde kullanmayacaksan boşuna değişkenlerin başlangıç değerini onlarla setleme.

            string imagesProduct = imgProduct.ImageUrl;
           
    string txtTitle = lblProductTitle.Text;
           
    string txtDetails = litDetails.Text;

           Yerine aşağıda ki kullanımı tercih et.

            string imagesProduct = string.empty;
           
    string txtTitle = string.empty;
           
    string txtDetails = string.empty;


    Kolay Gelsin...

    • Yanıt Olarak İşaretleyen 232323232323 23 Ağustos 2012 Perşembe 08:50
    23 Ağustos 2012 Perşembe 08:16
  • Cengiz Gür;

    size ne kadar teşekkür etsem azdır ancak bir yerden başlamak gerekir... :) sonsuz teşekkürler...

    ayrıca bir şey sorayım bunu her kullanımda bu şekilde mi yapmalıyım?

    ve kodların son hali:

    SqlConnection conn;
        SqlCommand comm;
        SqlDataReader reader;
        string connectionString = ConfigurationManager.ConnectionStrings["CS"].ConnectionString;
        string prdID = "";
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                TakeData();
            }
        }
    
        void TakeData()
        {
            prdID = Request.QueryString["product_id"];
            conn = new SqlConnection(connectionString);
            comm = new SqlCommand("select ID, Product_Title, Product_Details, Product_Images from Products where ID=" + prdID, conn);
            comm.Parameters.Add("@ID", System.Data.SqlDbType.Int);
            comm.Parameters["@ID"].Value = prdID;
    
            string imagesProduct = string.Empty;
            string txtTitle = string.Empty;
            string txtDetails = string.Empty;
    
            try
            {
                conn.Open();
                reader = comm.ExecuteReader();
                if (reader.Read())
                {
                    txtTitle = reader["Product_Title"].ToString();
                    txtDetails = reader["Product_Details"].ToString();
                    imagesProduct = reader["Product_Images"].ToString();
    
                    lblProductTitle.Text = txtTitle;
                    litDetails.Text = txtDetails;
                    imgProduct.ImageUrl = imagesProduct;
                }
                reader.Close();
            }
            catch (Exception ex)
            {
                lblW.ForeColor = Color.Red;
                lblW.Text = "Bilgilerin detayı yüklenirken hata oluştu!<br/>" + ex.Message;
            }
            finally
            {
                conn.Close();
            }
        }
    <div id="products">
            <br />
            <asp:Image ID="imgProduct" runat="server" Height="160" Width="160" />
            &nbsp;
            <h4>
                <asp:Label ID="lblProductTitle" runat="server"></asp:Label>
            </h4>
            <p>
                <asp:Literal ID="litDetails" runat="server"></asp:Literal></p>
        </div>
    tekrar teşekkürler...


    Ace Hood - We On

    Scope Piskopos - Ben 46 Raporlu Bir Deliyim

    Ben başarısız olmadım, sadece işin bu şekilde yapılmayacağının bir çok yolunu buldum ve işin nasıl yapılacağına da bir çok defa yaklaştım.


    23 Ağustos 2012 Perşembe 08:48