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

نام تاپیک: چک کردن معتبر بودن ConnectionString

  1. #1

    Question چک کردن معتبر بودن ConnectionString

    سلام دوستان.من یه فایل متنی دارم که قراره داخلش یه رشته ConnectionString باشه.حالا میخوام بفهمم که اصلا" این فایل محتوی connectionString هست یا نه.چون ممکنه کاربر دستکاری کرده باشه.تو نت سرچ کردم یه راهش این بود که تو حلقه try گذاشته شده باشه و open بشه ولی اگه محتوی کلا" یه چیز غیر مرتبط با کانکشن استرینگ باشه حتی اگه تو try بذارم بازهم از همون دستور داخل try خطا میگیره.
    کسی راهی به ذهنش میرسه؟

  2. #2
    مدیر بخش آواتار محمد رضا فاتحی
    تاریخ عضویت
    مهر 1387
    محل زندگی
    کهنسالترین موجود زنده در شهر منه
    پست
    1,181

    نقل قول: چک کردن معتبر بودن ConnectionString

    به نظر من بهترین راه کار همون try catch هست
    به تابع بنویسید که اینکار رو براتون انجام بده مثلا
       private bool checkconnection(string connectionString)        {
    SqlConnection con=new SqlConnection(connectionString);
    try
    {
    con.Open();
    con.Close();
    return true;
    }
    catch (Exception)
    {
    return false;
    }
    }

  3. #3

    نقل قول: چک کردن معتبر بودن ConnectionString

    درسته این کد رو نوشتم ولی از این خط ارور میگیره !
    SqlConnection con=new SqlConnection(connectionString);

    با اینکه داخل try هم گذاشتم بازهم خطای زمان اجرا داره.چیکار کنم !؟
    چون حتی ممکنه چیزهایی که داخل connectionString هست , چیزهای غیر مرتبط با ایتم های کانکشن استرینگ باشه!

  4. #4

    نقل قول: چک کردن معتبر بودن ConnectionString

    کسی راهی نمیدونه؟

  5. #5
    مدیر بخش آواتار محمد رضا فاتحی
    تاریخ عضویت
    مهر 1387
    محل زندگی
    کهنسالترین موجود زنده در شهر منه
    پست
    1,181

    نقل قول: چک کردن معتبر بودن ConnectionString

    خوب کلش رو بیارید داخل تری
    private bool checkconnection(string connectionString)        {         
    try
    {
    SqlConnection con=new SqlConnection(connectionString);
    con.Open();
    con.Close();
    return true;
    }
    catch (Exception)
    {
    return false;
    }
    }

  6. #6

    نقل قول: چک کردن معتبر بودن ConnectionString

    گفتم که حتی با اینکه کلش رو گذاشتم داخل try بازم خطای زمان اجرا داشت !

  7. #7
    مدیر بخش آواتار محمد رضا فاتحی
    تاریخ عضویت
    مهر 1387
    محل زندگی
    کهنسالترین موجود زنده در شهر منه
    پست
    1,181

    نقل قول: چک کردن معتبر بودن ConnectionString

    مگه میشه؟؟؟؟ذات try catch برای جلوگیری از خطای زمان اجراس!!!

  8. #8

    نقل قول: چک کردن معتبر بودن ConnectionString

    منم تعجب کردم ! ولی واقعی بود ! شما تست کردید؟!

  9. #9
    مدیر بخش آواتار محمد رضا فاتحی
    تاریخ عضویت
    مهر 1387
    محل زندگی
    کهنسالترین موجود زنده در شهر منه
    پست
    1,181

    نقل قول: چک کردن معتبر بودن ConnectionString

    ببینید!
    2015-02-17_11-08-53.png

  10. #10

    نقل قول: چک کردن معتبر بودن ConnectionString

    درسته اگه خطاش به connection ربط داشته باشه میره تو catch ولی مثلا" فرض کنید اصلآ" کانکشتن استرینگ شما یه چیز بی ربط باشه.مثلا" یه متن بیخود باشه! که اصلا" ایتم های کانکشن استرینگ رو هم نداشته باشه.اون وقت بازم try ..catch کار میکنه؟ من منظورم همینه.که تشخیص بده اصلا" این رشته معتبر هست یا نه.

  11. #11
    مدیر بخش آواتار محمد رضا فاتحی
    تاریخ عضویت
    مهر 1387
    محل زندگی
    کهنسالترین موجود زنده در شهر منه
    پست
    1,181

    نقل قول: چک کردن معتبر بودن ConnectionString

    الان تو تصویری که براتون گذاشتم دقیقا همین اتفاق افتاد هرچی توی textbox تایپ کنید اگه بتونه بوسیله اون کانکشن رو باز کنه پیام True می ده وگرنه False و این متن می تونه از فایل یا هر جای دیگه بیاد

  12. #12

    نقل قول: چک کردن معتبر بودن ConnectionString

    پس چرا برا من خطای زمان اجرا میگیره ! ببینید :
    errorconnection.jpg
    ورژن ویژوال شما چیه؟

  13. #13

    نقل قول: چک کردن معتبر بودن ConnectionString

    سلام
    دوست عزیز علت اینکه تو بلوک Try .. Catch ، ارور شما هندل نمیشه اینه که این خطا جزو SqlException ها نیست!
    بنابر این اگر توی قسمت Catch به جای SqlException SQLError ، بنویسید Exception SQLError این خطا هم مدیریت میشه.
    (اگر هم نخواهید بصورت کلی نوع Exception رخ داده رو مدیریت کنید میتونید از ArgumentException برای مدیریت این خطا هم استفاده کنید ، یعنی دو بخش Catch داشته باشید یکی برای ArgumentException و یکی برای SqlException)

    وقتی شما نوع Exception رو در قسمت Catch مشخص میکنید ، فقط استثناهایی از همون نوع در بلوک مدیریت میشن.




    موفق باشید
    قوانین سایت برنامه نویس [ به سوالات از طریق پیام خصوصی پاسخ داده نمی شود ]

  14. #14

    نقل قول: چک کردن معتبر بودن ConnectionString

    بله متوجه شدم.اخه میخوام اگه خطا مربوط به sql باشه با توجه به State اون نوع ، خطا رو بفهمم.وهمین طور اگه رشته غیر مرتبط با با کانکشن استرینگ بود.چجوری میشه هر دو تا خطا رو مدیریت کرد؟!

  15. #15

    نقل قول: چک کردن معتبر بودن ConnectionString

    تو پست قبل اون قسمتی که نارنجی نوشتم توضیح دادم دوست عزیز

    یعنی بلوکت به این شکل میشه (کد های مربوط به مدیریت هر کدوم از استثناها رو در بخش Catch مربوط به خودش بنویس)

    try
    {
    SqlConnection Con = new SqlConnection("khkh");
    Con.Open();
    return true;
    }
    catch (ArgumentException ex)
    {
    //ArgumentExeptions
    }
    catch (SqlException sqlex)
    {
    //SqlExeptions;
    }


    return false;



    ضمنا کانکشن رو هم ببند تو بلوک Try

    موفق باشید
    آخرین ویرایش به وسیله محمد آشتیانی : چهارشنبه 06 اسفند 1393 در 01:49 صبح
    قوانین سایت برنامه نویس [ به سوالات از طریق پیام خصوصی پاسخ داده نمی شود ]

تاپیک های مشابه

  1. سوال: چک کردن باز بودن فرم
    نوشته شده توسط fghdmhmmd در بخش C#‎‎
    پاسخ: 5
    آخرین پست: چهارشنبه 24 شهریور 1395, 13:57 عصر
  2. کد چک کردن کانکت بودن یا نبودن به اینترنت
    نوشته شده توسط __siavash__ در بخش برنامه نویسی در 6 VB
    پاسخ: 11
    آخرین پست: چهارشنبه 29 دی 1389, 21:45 عصر
  3. چک کردن valid بودن یک سایت
    نوشته شده توسط kasra515 در بخش C#‎‎
    پاسخ: 1
    آخرین پست: دوشنبه 01 مهر 1387, 12:49 عصر
  4. چک کردن فعال بودن sql server
    نوشته شده توسط ariobarzan در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 1
    آخرین پست: چهارشنبه 13 تیر 1386, 09:20 صبح
  5. چک کردن آنلاین بودن چاپگر و همچنین داشتن کاغذ قبل از ارسال دستور چاپ
    نوشته شده توسط RealDream در بخش برنامه نویسی در 6 VB
    پاسخ: 1
    آخرین پست: یک شنبه 16 اردیبهشت 1386, 01:31 صبح

برچسب های این تاپیک

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

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