نمایش نتایج 1 تا 6 از 6

نام تاپیک: جستجو در textbox هنگام textchange

  1. #1
    کاربر دائمی
    تاریخ عضویت
    آذر 1385
    محل زندگی
    تبریز
    پست
    501

    جستجو در textbox هنگام textchange

    با سلام
    می دونم این سوال تکراری است اما سوال من یه کم فرق داره پس خواهش می کنم که پاک نکنین
    یه textbox داریم که می خوایم هر وقت کاربر تایپ می کنه بر اساس اون جستجو بکنو و نتیجه رو در datagridview نمایش بده راه حلی که برای این کار ارائه دادن این است که از autocomplate استفاده کنیم این در صورتی است که table ما دارای تعداد محدودی مقدار باشه که بتونیم automocplate استفاده کنیم و از طرفی تعداد رکورد ها در table بسیار زیاد خواهد بود شاید به 1 میلیون هم برسه و از طرفی جستجو کاملا دینامیک است که بر اساس فیلدی که کاربر از روی datagridview انتخاب می کنه انجام می شه و در این حالت امکان داره که کاربر یه لحظه کد رو انتخاب کنه و یه لحظه عنوان و... پس با این فرض هم autocompalte هم منتفی است
    حالا من چه جوری می تونم این جستجو رو با بهترین کارایی بنویسم و طراحی کنم در ضمن برنامه تحت شبکه می باشد و تعداد نسخه هایی که از database استفاده می کننن احتمال دارد به 100 عدد برسد
    با تشکر از همه

  2. #2
    کاربر دائمی
    تاریخ عضویت
    آذر 1385
    محل زندگی
    تبریز
    پست
    501

    نقل قول: جستجو در textbox هنگام textchange

    پس چرا کسی جواب نمی ده؟

  3. #3

    نقل قول: جستجو در textbox هنگام textchange

    به نظر من می تونی تو رویداد TextChange از کد Like مربوط به sql استفاده کنید. البته نمی دونم با رکوردهای زیادی که دارید چقدر رو سرعت تاثیر داره.

  4. #4
    کاربر دائمی
    تاریخ عضویت
    بهمن 1387
    محل زندگی
    تهران
    پست
    114

    نقل قول: جستجو در textbox هنگام textchange

    این چیزی که من تو برنامه هام استفاده می کنم

    توی کد زیر SelectCommand رو تعیین میکنم

    privatestring SelectData()
    {
    string selectCommand = null;
    if (_customerID != 0)
    {
    selectCommand += " AND CustomerID = " + _customerID;
    }
    if (_firstName != null)
    {
    selectCommand += " AND FirstName LIKE '" + _firstName + "%'";
    }
    if (_lastName != null)
    {
    selectCommand += " AND LastName LIKE '" + _lastName + "%'";
    }
    if (_address != null)
    {
    selectCommand += " AND Address LIKE '" + _address + "%'";
    }
    if (_phoneNumber1 != null)
    {
    selectCommand += " AND PhoneNumber1 LIKE '" + _phoneNumber1 + "%'";
    }
    if (_phoneNumber2 != null)
    {
    selectCommand += " AND PhoneNumber2 LIKE '" + _phoneNumber2 + "%'";
    }
    if (_customerDetail != null)
    {
    selectCommand += " AND CustomerDetail LIKE '" + _customerDetail + "%'";
    }
    if (_customerSince != null)
    {
    selectCommand += "AND CustomerSince LIKE '" + _customerSince + "%'";
    }
    if (selectCommand != null)
    {
    return selectCommand.Remove(0, 4);
    }
    returnnull;
    }


    و توی این هم از SelectCommand ساخته شده واسه گرفتن اطلاعات استفاده میکنم

    publicDataTable GetData()
    {
    OleDbCommand command = newOleDbCommand();
    OleDbDataAdapter customerDataAdapter = newOleDbDataAdapter();
    DataTable dt = newDataTable();
    try
    {
    connection.Open();
    command.Connection = connection;
    string selectCommand = SelectData();
    if (selectCommand != null)
    {
    selectCommand = "WHERE " + selectCommand + " ORDER BY CustomerID ASC";
    }
    else
    {
    selectCommand = "ORDER BY CustomerID ASC";
    }
    command.CommandText = "SELECT Customer.CustomerID AS [ ], FirstName AS ," +
    " LastName AS [ ], Address AS , PhoneNumber1 AS [ 1], PhoneNumber2 AS [ 2]," +
    " CustomerDetail AS , CustomerSince AS [ ] FROM Customer " + selectCommand;
    customerDataAdapter.SelectCommand = command;
    customerDataAdapter.SelectCommand.ExecuteNonQuery( );
    customerDataAdapter.Fill(dt);
    return dt;
    }
    catch
    {
    returnnull;
    }
    finally
    {
    connection.Close();
    command.Dispose();
    customerDataAdapter.Dispose();
    dt.Dispose();
    }
    }

  5. #5
    کاربر دائمی
    تاریخ عضویت
    آذر 1385
    محل زندگی
    تبریز
    پست
    501

    نقل قول: جستجو در textbox هنگام textchange

    با تشکر از راهنمایی شما
    مشکل بنده اینه که تعداد رکورد های جدول ما بسیار زیاد است و تنوع جستجو هم زیاد است در ضمن
    دوست عزیز آقای hsmfaridmehr وقتی که شما با عملگر like کار می کنین اگر dataی ورودی تون هم null باشه error نمی ده پس بهتر ه که اون if ها رو برداری تا خوانایی برنامه شما هم بیشتر بشه و هم سرعت برنامه شما بهتر بشه

  6. #6
    کاربر دائمی
    تاریخ عضویت
    بهمن 1387
    محل زندگی
    تهران
    پست
    114

    نقل قول: جستجو در textbox هنگام textchange

    کاملا درست میگی مرسی

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •