"System.Data.SqlClient.SqlException: 'The parameterized query" hatası alıyorum ne yapabilirim?

kadirbugra (1) 3 yıl önce sordu
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;

public partial class KatagoriDetay : System.Web.UI.Page
{
    sqlbaglantimiz snf = new sqlbaglantimiz();
    string KatagoriId = "";
    
    protected void Page_Load(object sender, EventArgs e)
    {
        KatagoriId = Request.QueryString["KatagoriId"];
        SqlCommand komut = new SqlCommand(" Select * From Tbl_Yemekler Where KatagoriId = @p1",snf.sqlbaglanti());
        komut.Parameters.AddWithValue("@p1", KatagoriId);
        SqlDataReader dr = komut.ExecuteReader();
        DataList2.DataSource = dr;
        DataList2.DataBind();


    }
}

 

Toplam 1 cevap


alattin (17125) 3 yıl önce cevapladı

Muhtemelen 

KatagoriId = Request.QueryString["KatagoriId"];

satırında Request.QueryString  ile değer gelmiyor.  Bu noktaya breakpoint koy ve KategoriId değer alıyor mu bunu kontrol et

kadirbugra 3 yıl önce

Denedim ancak tekrar kırıldı, bir kaç kişiye sordum p1 değeri boş dediler ancak p1 değerini veri tabanından çekiyor boş nasıl olabilir anlamadım

alattin 3 yıl önce

@kadirbugra p1 degerini veritabanından çekmiyorsun URL üzerinden istekte bulunuyorsun. KatagoriId den gelen değeri de P1 parametresine atıyorsun. Dolayısı ile KatagoriId boş ise p1 parametresi de boş değer alıyor. Bu hatayı alıyorsun.

alattin 3 yıl önce

Bu sayfaya gelen link şu şekilde olmalı: kategori.aspx? kategoriId=10 bu örnek tabi