مزیت استفاده از Safe Cast در #C

       می توان  ObjectA را به ObjectB، با دو روش زیر Cast نمود:

var x = ObjectA as ObjectB;

var x = (ObjectB) ObjectA;

روش اول را Safe Cast می گویند. در این روش اگر ObjectA قابل Cast کردن به ObjectB نباشد، مقدار برگشتی که همان x است Null خواهد شد و Exception پیش نمی آید. اما در روش دوم اگر ObjectA به ObjectB قابل Cast کردن نباشد، سیستم Exception می دهد.

به همین دلیل توصیه می شود در زمان Cast کردن از روش اول استفاده شود.

دیباگ کردن برنامه در محیط VisualStudo

  1. اگر بخواهیم در زمان دیباگ  در محیط  Visual Studioبه متغیری مقدار بدهیم و برنامه با این متغیر دلخواه ما ادامه پیدا کند، این متغیر را Add Watch می کنیم و در آنجا برای این متغیر  EditValue انجام می دهیم.

در مورد Enum در #C

  1. وقتی یک Property از تایپ Enum داریم، یعنی در زمان ذخیره کردن آن در دیتابیس یک Int ذخیره می شود.
  2.  در صورتی که به عناصر یک Enum مقدار داده نشود، سیستم به آن به ترتیب مقادیر 0، 1  و ... را تخصیص می دهد.
  3.  در صورتی که به بعضی از عناصر یک Enum عدد تخصیص داده باشیم و به بعضی از آنها عددی تخصیص نداده باشیم، سیستم به آنهایی که عددی برایشان تخصیص داده نشده به ترتیب اعداد 0، یک و ... را تخصیص می دهد.
  4. در Enum ها، در حالت پیش فرض آن عنصرش که عدد صفر به آن تخصیص داده شده است، در حالت انتخاب شده نمایش داده می شود.
  5.  اگر به هیچ کدام از عناصر یک Enum، مقدار صفر تخصیص داده نشده باشد و ما یک property از تایپ این Enum تعریف کرده باشیم که Nullable نباشد، در صورتی که به این property هیچ مقداری تخصیص ندهیم، سیستم به آن پراپرتی مقدار صفر تخصیص می دهد.
  6. اگر یک property از تایپ Enum داشته باشیم و Nullable هم باشد، در صورتی که به این Property مقداری تخصیصی ندهیم، مقدار Null به آن تخصیص داده می شود.

در مورد Sequence در اراکل

  1. اگر Sequence ای به صورت Cycle تعریف شده باشد، یعنی اینکه بعد از رسیدن به عدد انتهایی می تواند از ابتدا شروع شود.
  2.  اگر Sequence ای به صورت NoOrder تعریف شده باشد، یعنی اعدادی که تولید می کند متوالی نخواهند بود.

در مورد Sequence در اراکل

وقتی که قرار است کلاینت های مختلف در دیتابیس رکوردهایی ذخیره کنند و برای هر رکوردی که ثبت می شود یک کد منحصربفرد داده شود  یک راهش این است که یک Sequence در دیتابیس تعریف شود و هر کلاینت در زمان ثبت مقدار Sequence را بگیرد و به عنوان کد منحصربفرد رکورد خود، ثبت نماید. 

وقتی در یک زمان چندین کلاینت مقدار Sequence  را می خوانند، عددی که هر کدام دریافت می کنند منحصربفرد است.  یعنی اوراکل تضمین می کند که در یک زمان هیچ دو کلاینتی مقدار یکسان دریافت نکنند.