الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال عن امكانيه اداه الsqldatasource

بدأه web desing في 30 يناير 2012 · 26 رد · 1,172 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمه الله وبركاته ..

لدي اثنين dropdownlist واحده لاسماء المدن والاخرى للمنطقه ولدي RadioButtonlist لتحديد الجنس وقد قمت بربط جميع هذه الكنترول بالsqldatasource وعند أختيار المدينه وأختيار المنطقه والجنس يتم أظهار البيانات ولكن عند أختيار أحدها مثل المدينه فقط لا تظهر االبيانات وانما تظهر رساله خطأ وهي Object reference not set to an instance of an object فهل اداه sqldatasource ليس لديها امكانيه للبحث المتعدد والبحث المفرد معا في نفس الوقت ؟

#2

هذا يتوقف علي جملة الاستعلام والقيمة الافتراضية في البرامتر

#3

هذه هي جمله الاستعلام من configure data source

SELECT [mobile], [name] FROM [allData] WHERE (([city] = @city) AND ([town] = @town) AND ([gender] = @gender))

كيف أجعلها تظهر البيانات عند تحديد خيار واحد مثلا المدينه فقط ولم أحدد المنطقه والجنس؟

#4

محتاجه اجابه لو سمحتو

#5

حتى لمن كتبتها بالوضع المنفصل ما أستوعب تمرير أكثر من بارميتر ايش السبب

SqlCommand cmd = new SqlCommand("SELECT mobile FROM allData WHERE city,town,gender,skill =@city @town @gender @skill ", conn);

SqlParameter param = new SqlParameter();

cmd.Parameters.AddWithValue("@city", inputcity.SelectedItem.ToString());

cmd.Parameters.AddWithValue("@gender", RadioButtonList1.SelectedItem.ToString());

cmd.Parameters.AddWithValue("@town", DropDownList2.SelectedItem.ToString());

cmd.Parameters.AddWithValue("@skill", RadioButtonList2.SelectedItem.ToString());

#6

انظر هذا الدرس

الرابط الخاص بي

#7

رأيت الدرس ومازالت المشكله قائمه

#8
  هذا الكود بالكامل ممكن تقولولي وين المشكله 

  Response.Clear();
         SqlConnection conn = null;     
         conn = new SqlConnection("Data Source=WINDOWS7-PC;Initial Catalog=mydata;Integrated Security=True");
         SqlCommand cmd = new SqlCommand("SELECT  mobile FROM allData WHERE city,town,gender,skill =@city @town @gender @skill ", conn);
         SqlParameter param = new SqlParameter();
         cmd.Parameters.AddWithValue("@city", inputcity.SelectedItem.ToString());
         cmd.Parameters.AddWithValue("@gender", RadioButtonList1.SelectedItem.ToString());
         cmd.Parameters.AddWithValue("@town", DropDownList2.SelectedItem.ToString());
         cmd.Parameters.AddWithValue("@skill", RadioButtonList2.SelectedItem.ToString());
         cmd.Parameters.Add(param);     
         cmd.Connection.Open();
        SqlDataReader reader = cmd.ExecuteReader();
        StringBuilder sb = new StringBuilder();
        string data = "";
        data = "data" + ".txt";
        Response.ContentType = "txt";
        Response.Charset = "";
        Response.AddHeader("Content-Disposition", "attachment;data=" + data);
        Response.ContentEncoding = Encoding.Unicode;
        Response.BinaryWrite(Encoding.Unicode.GetPreamble());
        sb.Append("mobile");
        sb.Append("\n");

        while (reader.Read())

        { 
          sb.Append(reader["mobile"].ToString().Replace(";", " "));

            sb.Append(";");

            sb.Append("\n");
        }

        reader.Close();

        cmd.Connection.Close();

        Response.Write(sb.ToString());

        Response.Flush();

        Response.End();





        }
#9

انظر المثال

WebSite1.rar

1
#10

شكرا أخي كريم لتعاونك معي أسال الله ان يكتب لك الأجر في طبقت المثال الذي ارفقته وظهرت لي رساله الخطأ التاليه

Conversion failed when converting the nvarchar value '' to data type int.

#11

في اي سطر

اؤفق المشروع الخاص بك مع قاعدة البيانات

#12

عند أختيار المنطقه والضغط على زر التصدير لاكسل وملف نصي

#13

المرفقات

#14
web desing كتب:

المرفقات

#15
test.zip
#16

اين المرفق الجديد

#17
test.zip هذا هو أخي الكريم
#18

السلام عليكم ورحمة الله وبركاته

اخي الكريم

مشروعك ناقص ملفات كتيير وخصوص ملف Master

حاول ترفع مشروعك كامل مرة اخري حتي يمكنني تشغيله لدينا

والله الموفق والمستعان

#19

من جد الله المستعان لأن المشروع حجمه أكبر من 600 كيلو عشان كذا أضرتت لمسح بعض الملفات أرفقته مره أخرى بصفحه الماسترtest.zip

الصفحه المراد التعديل فيها searchD.aspx

#20

انظر التتعديل

     Response.Clear();
         SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
         SqlCommand cmd = new SqlCommand("SELECT  mobile FROM allData WHERE (city=@city or @city='-1') and  (gender=@gender  or @gender='-1') and (town=@town or @town='-1' ) and (skill=@skill or @skill ='-1')", conn);
        string  city="-1";
        if (inputcity.SelectedItem.Text.ToString() != "أختر المدينه")
            city = inputcity.SelectedItem.Text.ToString();
        cmd.Parameters.AddWithValue("@city", city );

        string town = "-1";
        if (DropDownList1.SelectedItem.Text.ToString() != "حدد منطقتك")
            town=DropDownList1.SelectedItem.Text.ToString();
        cmd.Parameters.AddWithValue("@town",town);

        string gender = "-1";
        if (RadioButtonList1.SelectedIndex != -1)
            gender = RadioButtonList1.SelectedItem.Text.ToString();
        cmd.Parameters.AddWithValue("@gender", gender);


        string  skill = "-1";   
        if (RadioButtonList2.SelectedIndex !=-1)
        skill=RadioButtonList2.SelectedItem.Text.ToString();
        cmd.Parameters.AddWithValue("@skill", skill);

        cmd.Connection.Open();
        SqlDataReader reader = cmd.ExecuteReader();
        if (reader.HasRows == false) return;
        StringBuilder sb = new StringBuilder();
        string data = "";
        data = "data" + ".txt";
        Response.ContentType = "txt";
        Response.Charset = "";
        Response.AddHeader("Content-Disposition", "attachment;data=" + data);
        Response.ContentEncoding = Encoding.Unicode;
        Response.BinaryWrite(Encoding.Unicode.GetPreamble());
        sb.Append("mobile");
        sb.Append("\n");

        while (reader.Read())
        {
            sb.Append(reader["mobile"].ToString().Replace(";", " "));

            sb.Append(";");

            sb.Append("\n");
        }

        reader.Close();

        cmd.Connection.Close();

        Response.Write(sb.ToString());

        Response.Flush();

        Response.End();
#21

الكود صحيح لا تظهر رساله خطأ ولكن البيانات التي في قاعده البيانات لاتظهر أرفقت المشروع وبه قاعده البيانات والصفحه المطلوبه

WebApplication3.zip

#22

جدول city يحتاج الي كتابة مسلسل id بشكل صحيح

1
#23

ماأدري أيش أقول الصراحه كلمه شكرا قليله أشتغل تمام

باقي أخر شي لو تكمل جميلك وتحللي مشكله في التصدير لأكسل وهذا الكود كامل

       



protected void Button8_Click(object sender, EventArgs e)

         {





GEETStandard geet = new GEETStandard(ExcelOutputFormat.xlsx);

            

            geet.CreateAndAddExcelSheetFromSqlDataSource(



"allData", ref SqlDataSource5, true, false);

             





HttpResponse r = Page.Response;

             geet.GEETOutputResponse(



ref r,"open excel", true, HttpCacheability.ServerAndPrivate, 0);

         }

ورساله الخطأ Object reference not set to an instance of an object للسطر الثالث والرابع من الكود السابق عند أختيار أحد الخيارات لنفس الداتا بيس السابقه

حاولت ارفاق المشروع مع ال references للأكسل لكن حجمه كبير وأرجع واكرر شكري

الكود أوضحprotected void Button8_Click(object sender, EventArgs e)

GEETStandard geet = new GEETStandard(ExcelOutputFormat.xlsx);

geet.CreateAndAddExcelSheetFromSqlDataSource(

"allData", ref SqlDataSource5, true, false);

HttpResponse r = Page.Response;

geet.GEETOutputResponse(

ref r,"open excel", true, HttpCacheability.ServerAndPrivate, 0);

}

#24

لا شكر علي واجب

تدفع كلم مجرد مزح

هذا الكود في الhtml

 <asp:SqlDataSource ID="SqlDataSource5" runat="server" 
                ConnectionString="<%$ ConnectionStrings:mydataConnectionString %>" 
                SelectCommand="SELECT  mobile FROM allData WHERE (city=@city or @city='-1') and  (gender=@gender  or @gender='-1') and (town=@town or @town='-1' ) and (skill=@skill or @skill ='-1')" >
                <SelectParameters>
                    <asp:Parameter Name="city" />
                    <asp:Parameter Name="gender" />
                    <asp:Parameter Name="town" />
                    <asp:Parameter Name="skill" />
                </SelectParameters>
            </asp:SqlDataSource>

هذا كود الزر

 string city = "-1";
        if (inputcity.SelectedItem.Text.ToString() != "أختر المدينه")
            city = inputcity.SelectedItem.Text.ToString();
        SqlDataSource5.SelectParameters["city"].DefaultValue = city;

        string town = "-1";
        if (DropDownList1.SelectedItem.Text.ToString() != "حدد منطقتك")
            town = DropDownList1.SelectedItem.Text.ToString();
        SqlDataSource5.SelectParameters["town"].DefaultValue = town;

        string gender = "-1"; if (RadioButtonList1.SelectedIndex != -1)
            gender = RadioButtonList1.SelectedItem.Text.ToString();
        SqlDataSource5.SelectParameters["gender"].DefaultValue = gender;

        string skill = "-1";
        if (RadioButtonList2.SelectedIndex != -1)
            skill = RadioButtonList2.SelectedItem.Text.ToString();
        SqlDataSource5.SelectParameters["skill"].DefaultValue = skill;

        GEETStandard geet = new GEETStandard(ExcelOutputFormat.xlsx);

        geet.CreateAndAddExcelSheetFromSqlDataSource("allData", ref SqlDataSource5, true, false);

        HttpResponse r = Page.Response;

        geet.GEETOutputResponse(ref r, "open excel", true, HttpCacheability.ServerAndPrivate, 0);

اي خدمه

#25

يوجد شئ ناقص الحقول تظهر بدون البيانات ... لسه ماخلصت مني

مواضيع مشابهة