PDA

View Full Version : هجوم خطا های یکسان به برنامه!



R_Rajaee_Rad
سه شنبه 17 خرداد 1390, 22:06 عصر
امروز میخواستم پروژه رو خیر سرم publish کنم
اولش درست پابلیش شد اما یه سری تغییرات کوچیک دادم دوباره میخواستم پابلیش کنم
75 تا خطا با این مضمون رو داد


Option Strict On disallows implicit conversions .....

که بعد از سه نقطه درباره int و دابل و....
الان به هرچی که مربوط به عدد هست تو برنامه خطا داده که اولش با اون کلمات بالا شروع میشه
خواهشا سریع کمک کنید!!

m.soleimani
سه شنبه 17 خرداد 1390, 23:01 عصر
امروز میخواستم پروژه رو خیر سرم publish کنم
اولش درست پابلیش شد اما یه سری تغییرات کوچیک دادم دوباره میخواستم پابلیش کنم
75 تا خطا با این مضمون رو داد


Option Strict On disallows implicit conversions .....

که بعد از سه نقطه درباره int و دابل و....
الان به هرچی که مربوط به عدد هست تو برنامه خطا داده که اولش با اون کلمات بالا شروع میشه
خواهشا سریع کمک کنید!!

اون چندتا تغییرات کوچیک رو برگردون به حالت قبل ببین مشکل برطرف می‌شه :چشمک:

R_Rajaee_Rad
چهارشنبه 18 خرداد 1390, 09:38 صبح
اون چندتا تغییرات کوچیک رو برگردون به حالت قبل ببین مشکل برطرف می‌شه :چشمک:

دوست غزیز یکم بیشتر توضیح میدادی!:گریه:
===========================================
ولی دلم به دریا زدم با راهنمایی خود vs هفتاد و پنج تا خطا رو رسوندم به 33 تا
اما این خطاها رو دیگه راهنمایی نمی کنه
============================================
این 33 تا خطا از سه نوعن

دسته اول


Error 4 Option Strict On disallows implicit conversions from 'String' to 'Double'

=====================================
دسته دوم


Error 5 Option Strict On disallows late binding.

=========================================
دسته سوم

Error 32 Option Strict On requires all variable declarations to have an 'As' clause


که این 2 دسته اول فقط به کوئری هایی که با لینک نوشتم گیر دادن!

دسته سوم هم به تعریف متغیرهای مربوط به لینک مثل Dim st = From query In db.Drivers()
این گیر داده
============================================
این مشکلا چه جوری حل میشن؟؟
اصلا برای چی یهو بوجود اومدن؟؟

R_Rajaee_Rad
چهارشنبه 18 خرداد 1390, 10:44 صبح
تصحیح میشود
33 خطا به 12 خطا تقلیل پیدا کرد

اما هنوز این دسته از خطاها باقی مونده
================================================== =======
دسته سوم
Option Strict On requires all variable declarations to have an 'As' clause



که این 2 دسته اول فقط به کوئری هایی که با لینک نوشتم گیر دادن!

دسته سوم هم به تعریف متغیرهای مربوط به لینک مثل
Dim st = From query In db.Drivers()

باید تعریف متغیر ها ی مربوط به لینک رو تغییر بدم اما هرکار کردم خطا داد باید چکارش کنم؟؟
راستی تمام توابع val موجود به cint تبدیل شدن.مشکلی پیش نمیاد؟؟

Mani_rf
چهارشنبه 18 خرداد 1390, 16:26 عصر
VB یک قابلیت بسیار خوب داره که نوع متغییر ها را به صورت خود کار به هم تبدیل میکنه مثلا شما مجازید که String را مساوی با Char قرار بدین. اما میتونید این امکان را هم ازش بگیرید. احتمالا این گزینه را غیر فعال کردید که داره از تبدیل متغیر هاتون ایراد میگیره.
برو تو Option پروژت تو تب Compile گزینه Option Stric را On کن.
احتمالا درست میشه.

R_Rajaee_Rad
چهارشنبه 18 خرداد 1390, 17:11 عصر
متشکر درست شد!!!!

اگر این حالت off باشه

به این نوع دستورات خطا میگیره
public st = From query In db.Drivers()


اما اگر به این حالت دربیاد درست میشه

Public st As New Drivers()

متن خطا
1
Option Strict On requires all variable declarations to have an 'As' clause
کدومش بهتر و خوانا تر و استاندارد تره؟؟

Mani_rf
پنج شنبه 19 خرداد 1390, 10:58 صبح
خواهش میکنم اما برای تشکر باید از دکمه تشکر استفاده کنید.
بهتره که نوع متغییرت را صریحا مشخص کنید. روش اولی که استفاده کردی خیلی صحیح نیست.