تور لحظه آخری
امروز : سه شنبه ، 13 آذر 1403    احادیث و روایات:  امام علی (ع):رسول اكرم صلى‏الله‏عليه‏و‏آله چيزى مثل شام و غير آن را بر نماز مقدم نمى‏داشتند و ه...
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

صرافی ارکی چنج

صرافی rkchange

سایبان ماشین

دزدگیر منزل

تشریفات روناک

اجاره سند در شیراز

قیمت فنس

armanekasbokar

armanetejarat

صندوق تضمین

Future Innovate Tech

پی جو مشاغل برتر شیراز

آراد برندینگ

خرید یخچال خارجی

موسسه خیریه

واردات از چین

حمية السكري النوع الثاني

ناب مووی

دانلود فیلم

بانک کتاب

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

طراحی سایت تهران سایت

irspeedy

درج اگهی ویژه

تعمیرات مک بوک

دانلود فیلم هندی

قیمت فرش

درب فریم لس

زانوبند زاپیامکس

روغن بهران بردبار ۳۲۰

قیمت سرور اچ پی

خرید بلیط هواپیما

بلیط اتوبوس پایانه

قیمت سرور dl380 g10

تعمیرات پکیج کرج

لیست قیمت گوشی شیائومی

خرید فالوور

پوستر آنلاین

بهترین وکیل کرج

بهترین وکیل تهران

خرید اکانت تریدینگ ویو

خرید از چین

خرید از چین

تجهیزات کافی شاپ

ساختمان پزشکان

محصولات فوراور

خرید سرور اچ پی ماهان شبکه

دوربین سیمکارتی چرخشی

همکاری آی نو و گزینه دو

کاشت ابرو طبیعی و‌ سریع

الک آزمایشگاهی

الک آزمایشگاهی

خرید سرور مجازی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

لوله و اتصالات آذین

قرص گلوریا

نمایندگی دوو در کرج

خرید نهال سیب

وکیل ایرانی در استانبول

وکیل ایرانی در استانبول

وکیل ایرانی در استانبول

رفع تاری و تشخیص پلاک

پرگابالین

دوره آموزش باریستا

مهاجرت به آلمان

بهترین قالیشویی تهران

بورس کارتریج پرینتر در تهران

تشریفات روناک

نوار اخطار زرد رنگ

 






آمار وبسایت

 تعداد کل بازدیدها : 1837269166




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

معادل کدهای VB در C#


واضح آرشیو وب فارسی:سایت ریسک: bad_boy_200707-05-2009, 12:17 AMسلام دوستان من دارم چند تا از قسمتهای جدید برنامم رو با C# مینویسم ولی تا الان خیلی کم باهاش کد نوشتم میشه لطفا در مورد کدهای معادل زیر کمکم کنید ؟ یک چند تا سایت بود که معادل رو میداد ولی درست کار نمیکرد یا من نمیتونستم معادلش رو در بیارم !؟ معادل دستور چک کردن DBNull : کد VB رو اینطور مینوشتم : If NotISDBNull(Field) then ..... end if یکم سرچ زدم به کد زیر برای معادل #C رسیدم ولی بازم Eception میده که میخوای مقدار DBNull رو بخونم ! If(!Conversion.isdbnull(Field)) { .... } معادل دستور Val تو VB : مثلا قبلا تو VB وقتی میخواستم مقدار یک تکست باکس رو که ممکن بود "" هم باشه رو بخونم ، مینوشتم : Item=Val(textbox1.text) معادل C# رو پیدا کردم این بود : Microsoft.Visualbasic.val... و درست هم کار میکرد ولی فکر میکنم تو C# صحیح نباشه از این استفاد کنم !؟ kiuhnmgtrdcv07-05-2009, 12:11 PMبرنامه هایی وجود داره که کدای شما رو از vb به c# میبره در هر حال !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! _H2_07-05-2009, 12:40 PMسلام کلاس Microsoft.VisualBasic.Conversion در واقع کلاس اصلی است که همین متدهای VB 6 را برای VB.Net پیاده سازی میکند. ولی در کل پیشنهاد میکنم از سینتکسها استاندارد دات نت استفاده کنید. یعنی در خود VB.Net هم بهتر است دستورات قدیمی VB 6 را فراموش کنید. اینکار ضمن انکه اجازه برنامه نویسی با زبانهای دیگر را هم به شما میدهد، در اکثر مواقع بازدهی سرعتی بالاتری دارد. ===== در مورد دستور اولتان اینها معادلهای خالص دات نتی هستند. !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! ===== در مورد دستور دوم هم ... متدهای parse اصلی دات نت که وظیفه این تبدیل را بر عهده دارند در خود تیپ ها مستقر هستند و سر راست ترین معادل اینها هستند: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! ضمناً در برنامه های عادی، پیشنهاد میکنم در گرفتن اعداد، به جای TextBox از کنترلر مخصوص NumericUpDown استفاده کنید. کنترلر فوق میتواند محدود Min و Max ای برای عدد مشخص کند و برای افزایش و کاهش با دکمه هایش میتواند پله ای مشخص کنید و ... ===== برای این نوع تبدیلات کلاس System.Convert هم بد نیست، البته اغلب متدهای این کلاس، متدهای اصلی را در جای دیگر فراخوانی میکنند و معادلهای دیگری دارند ولی بالاخره جمع و مجتمع کردن این متدها در یک کلاس واحد هم خودش به ذات ارزشمند است. موفق باشید. bad_boy_200707-05-2009, 11:06 PMسلام کلاس Microsoft.VisualBasic.Conversion در واقع کلاس اصلی است که همین متدهای VB 6 را برای VB.Net پیاده سازی میکند. ولی در کل پیشنهاد میکنم از سینتکسها استاندارد دات نت استفاده کنید. یعنی در خود VB.Net هم بهتر است دستورات قدیمی VB 6 را فراموش کنید. اینکار ضمن انکه اجازه برنامه نویسی با زبانهای دیگر را هم به شما میدهد، در اکثر مواقع بازدهی سرعتی بالاتری دارد. ===== در مورد دستور اولتان اینها معادلهای خالص دات نتی هستند. !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! ===== در مورد دستور دوم هم ... متدهای parse اصلی دات نت که وظیفه این تبدیل را بر عهده دارند در خود تیپ ها مستقر هستند و سر راست ترین معادل اینها هستند: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! ضمناً در برنامه های عادی، پیشنهاد میکنم در گرفتن اعداد، به جای TextBox از کنترلر مخصوص NumericUpDown استفاده کنید. کنترلر فوق میتواند محدود Min و Max ای برای عدد مشخص کند و برای افزایش و کاهش با دکمه هایش میتواند پله ای مشخص کنید و ... ===== برای این نوع تبدیلات کلاس System.Convert هم بد نیست، البته اغلب متدهای این کلاس، متدهای اصلی را در جای دیگر فراخوانی میکنند و معادلهای دیگری دارند ولی بالاخره جمع و مجتمع کردن این متدها در یک کلاس واحد هم خودش به ذات ارزشمند است. موفق باشید. سلام استاد ممنون از راهنمایی کاملتون :46: با این دستور مشکل دارم !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! درستور فوق اگه رشته تهی (در مورد اعداد رشته ای مشکل نداره) خطا میده ، خب حالا باید از همون تابع Val که تو فضای نام Microsoft.vb به نام Val بود استفاده کنم ؟ یا معادلش تو فضای نامهای دیگه هست ؟ مشکل با تابع Val از فضای نام قید شده رفع میشه فقط نمیدونم صحیحه که از فضای نام VB تو C# استفاده میکنم !؟ این کد رو نوشتم ولی باز هم Exception میده : !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! http://i41.tinypic.com/ehymqa.jpg با Reflector یک DLL ویژوال بیسیک رو دکامپایل کردم دیدم که از فضای نام Microsoft.vb.information.isdbnull استفاده کرده که ظاهرا باید معادل System.conver.isdbnull باشه و تست هم کردم ولی باز هم خطا میده !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! _H2_08-05-2009, 01:47 PMسلام درستور فوق اگه رشته تهی (در مورد اعداد رشته ای مشکل نداره) خطا میده ، خب حالا باید از همون تابع Val که تو فضای نام Microsoft.vb به نام Val بود استفاده کنم این مطلب اصلاً و ابداً دلیل خوبی برای استفاده از توابع قدیمی مثل Val نیست، چه در C#.Net و چه در VB.Net . - شما به راحتی میتوانید با یک if حالت فوق را تشخیص دهید... - میتوانید با یک دستور Try تابع خودتان را بسازید! !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! - تازه دو مطلب فوق را گفتم تا بدانید همیشه راه حلی وجود دارد، ولی در این مورد شما میتوانید الز تابع TryParse استفاده کنید. TryParse هیچگاه خطا نمیدهد، اگر تبدیل کند، true برمیگرداند و اگر نتواند false اگر هم خیلی مشتاق تابع Val هستند، پیشنهاد میکنم کد زیر را به پروژه تان اضافه کنید. !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! اگر هم میخواهید ورودیتان فقط string نباشد: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! میتوانید هم هر دو کد فوق با ورودی string و object را با هم به برنامه تان اضافه کنید، با توجه به قابلیت overload و متفاوت بودن امضای دو تابع مشکلی پیش نمی آید. این کد رو نوشتم ولی باز هم Exception میده از شما بعید است! این حرفها را نزید! تا شب هم بنویسید، با هر تابعی هم بنویسید باز خطا میدهد!!!! عزیز جان ... شما دارید از TypedDataSet استفاده میکنید! اصلاً دقت کردید خروجی خصیصه PardakhtID چی است؟ احتمالاً خروجی اش int است!!!!! به نظر شما int میتواند null یا dbnull یا string یا object و... و... باشد؟؟؟؟؟ آیا خروجی PardakhtID هموراه فقط و فقط و الزاماً یک int نیست؟؟؟ لطفاً روی PardakhtID در پروزه خودتان راست کلیک کنید و فرمان Go To Definition بدهید... با دستوری مثل این روبرو خواهید شد: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! در PardakhtID که شما فراخوانی میکنید، یک تبدیل ضمنی اتفاق می افتد و بعد دیتای آماده و نوع دار (Typed) که در اینجا int است تحویل شما میشود. اگر فید مذکور نتواند به int تبدیل شود، اصلاً ذات فراخوانی PardakhtID به خطا خواهد خورد! کدهای صحیح: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! موفق باشید. bad_boy_200708-05-2009, 03:56 PMممنون استاد از وقتی که گذاشتین :11: در مورد اول از TryPars استفاده میکنم دو مورد دوم هم با دستور if (!dr.IsPardakhtIDNull()) str.PardakhtSTR.ID = dr.PardakhtID; مشکلم رفع شد باز هم ممنون خیلی خیلی کمک کردین :46: BabyBoy14-05-2009, 12:31 AMولي فكر مي كنم كه اگه برنامه ي Dot Net Reflector رو هم يه نگاهي بندازي بد نيست نرم افزارش كاملا رايگانه و از خود سايت Red Gate مي توني دانلودش كني سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود




این صفحه را در گوگل محبوب کنید

[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 2422]

bt

اضافه شدن مطلب/حذف مطلب




-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن