تبلیغات :
آکوستیک ، فوم شانه تخم مرغی، صداگیر ماینر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 8 از 8

نام تاپيک: مشکل در insert کردن( asp.net)

  1. #1
    اگه نباشه جاش خالی می مونه roya_borhany's Avatar
    تاريخ عضويت
    Feb 2009
    محل سكونت
    کره زمین
    پست ها
    206

    پيش فرض مشکل در insert کردن( asp.net)

    میخواهم اطلاعات وارد شده در بانکم ذخیره شود. کد زیر را نوشتم

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    اما ذخیره نکرد. بعد از کلی کار کردن حالا خطای زیر رو میده که نمیدونم چیه تا بتونم مشکلش رو حل کنم؟


    ممنون میشم اگر راهنمایی کنید.

  2. #2
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    مشکل شما از همان خط مشخص شده در تصویر است ...
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    ConfigurationManager.ConnectionStrings راه ارتباطی شما با web.config است و میتوانید رشته اتصال را انجا قرار دهید و اینجا استفاده کنید ولی در کد شما باید Name ای را که به رشته اتصال داده اید درج کنید نه خود رشته را !!!!

    اگر قرار بود همینجا رشته اتاصل را تایپ کنید که دیگری چه نیازی به web.config و ConfigurationManager.ConnectionStrings بود؟

    =====

    کد صحیح:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    =====

    یا کد صحیح و بهتر:

    الف) تنظیم مطلوب زیر در فایل web.config:


    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    و سپس کدی مثل این:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    ==============

    در اخر اگر به جای تعریف عادی و بعد هم Close و... از دستور using استفاده کنید خیلی بهتر است.
    این دستور ضمن داشتن سینتکش مفهوم تر با تضمین بالا شی اش را نابود میکند و دیگری نیازی به Close هم نیست.

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    مطلب مرتبط:
    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

    =====

    موفق باشید.

  3. این کاربر از _H2_ بخاطر این مطلب مفید تشکر کرده است


  4. #3
    اگه نباشه جاش خالی می مونه roya_borhany's Avatar
    تاريخ عضويت
    Feb 2009
    محل سكونت
    کره زمین
    پست ها
    206

    پيش فرض

    اون مشکلم حل شد. این یکی چیه؟

    Last edited by roya_borhany; 01-01-2010 at 00:21.

  5. #4
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    اینکه همان خطای قبلی است.
    و در پست قبلی جواب داده شده!!!!

  6. #5
    اگه نباشه جاش خالی می مونه roya_borhany's Avatar
    تاريخ عضويت
    Feb 2009
    محل سكونت
    کره زمین
    پست ها
    206

    پيش فرض

    سلام
    اینکه همان خطای قبلی است.
    و در پست قبلی جواب داده شده!!!!
    حواس نمیذارن واسه آدم!!! ببخشید ویرایش کردم

  7. #6
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام

    =====

    من به بقیه دستوراتتان توجه نکرده بودم ...
    واضح است که خط مربوطه ایراد دارد.
    شما دستور INSERT داده اید و با ExecuteScalar اجرایش کرده اید !!!!!!!!!!
    INSERT که عددی بر نمیگرداند !!!!!
    باید با ExecuteNonQuery اجرایش کنید که مخصوص دستوراتی است که چیز خاصی برنمیگرداند.

    نمیدانم چرا انتظار داشته اید که INSERT یک عدد برگرداند!!!!
    آیا فیلد AutoNumber دارد که میخواستید عددش را پس از درج بگیرد !!!!! اگر چنین است باید دستور SELECT داشته باشید!

    =====

    مطلب بعدی انکه نیاز نیست اول پارامتر را اضافه کنید و سپس مقدارش را بدهید، این کار بازدهی کمی دارد:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    بجایش میتوانید از سینتکسی مثل این دستور استفاده کنید:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    =====

    مطلب بعد هم انکه اگر رشته های خالی و Nothing را با DBNULL تعویض کنید، کد مطمئن تری خواهید داشت.

    =====

    و مطلب آخر هم آنکه آپلود تصاویر در هاستی مثل rapidshare که لینک مستقیم نمیدهد برای استفاده در تگ IMG فایده ندارد و هیچکدام از تصاویر شما همینطوری دیده نمیشود !!!
    یا از هاستینگ هایی مخصوص تصویر استفاده کنید که لینک مستقیم تصویر میدهد و یا حداقل لینک تصاوری را به صورت عادی اینجا قرار دهید. (شاید افراد دیگر نتوانند به راحتی تصاویر شما را مشاهده کنند)
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  8. این کاربر از _H2_ بخاطر این مطلب مفید تشکر کرده است


  9. #7
    اگه نباشه جاش خالی می مونه roya_borhany's Avatar
    تاريخ عضويت
    Feb 2009
    محل سكونت
    کره زمین
    پست ها
    206

    پيش فرض



    نمیدانم چرا انتظار داشته اید که INSERT یک عدد برگرداند!!!!
    من عین همین دستور رو در یکی از کارهام استفاده کردم و به مشکل بر نخوردم. نمیدونم این یکی چرا این طوری شده؟

    آیا فیلد AutoNumber دارد که میخواستید عددش را پس از درج بگیرد !!!!!
    ببینید حالتی است که باید پس از هر سفارش یک شماره سفارش به فیلد مربوطه در جدول اضافه کند
    اگر چنین است باید دستور SELECT داشته باشید!
    متوجه نشدم. یعنی باید چی کار کنم؟ select رو برای چی باید استفاده کنم؟


    از هاستینگ هایی مخصوص تصویر استفاده کنید
    بله حتما!!!
    البته اگر ممکن است به خطای زیر هم یه نگاهی بندازین. واقعا نمیدونم چرا سر این کارم اینطوری اسیر شدم. ممنون
    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

  10. #8
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    متوجه نشدم. یعنی باید چی کار کنم؟ select رو برای چی باید استفاده کنم؟
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    البته اگر ممکن است به خطای زیر هم یه نگاهی بندازین. واقعا نمیدونم چرا سر این کارم اینطوری اسیر شدم.
    این تصویر فایده ندارد!
    دستور Try-Finally-End Try را حذف کنید تا محل و خط واقعی خطا مشخص شود و سپس تصویر بگیرد.

    موفق باشید.

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

برچسب های این موضوع

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •