متد VB.Net جهت بررسی اعتبار کد ملی

رقم آخر در کد ملی برای کنترل صحت استفاده می شود و بوسیله تابع زیر می توان اعتبار آن را سنجید :


Private Function IsValidMelliCode(ByVal melliCode As String)
Try

melliCode = melliCode.Replace("-", "")
Dim pos As Integer = 10
Dim sum As Integer = 0

For i = 0 To 8
  sum += Integer.Parse(melliCode.ToCharArray()(i).ToString()) * pos
  pos = pos - 1
Next i

Dim remind As Integer = sum Mod 11
Dim controlNum As Integer = Integer.Parse(melliCode.ToCharArray()(9))

If remind <= 2 Then
    If controlNum = remind Then
              Return True
     Else
              Return False
     End If
Else
     If (11 - remind) = controlNum Then
          Return True
      Else
          Return False
     End If
End If
Catch ex As Exception
    Throw ex
End Try
End Function

مفهوم معماری N-tier

مفهوم معماری N-tier

ابتدا بایستی اختلاف بین layers و tiers را مشخص کنیم . یک اپلیکیشن با طراحی خوب دارای چندین لایه است که وابستگیهای آنها  با دقت مدیریت شده است. لایه ها می توانند در یک tier یا در میان چندین tiers قرار بگیرند. لایه فقط مفهوم سازمانی در برنامه کاربردی دارد در حالی که tier به معنی جداسازی فیزیکی یا حداقل یک طراحی با قابلیت جداسازی فیزیکی در صورت نیاز می باشد.


به طور مثال هر برنامه ی کاربردی ASP.net شامل یک دیتابیس از لحاظ فنی n-tier است زیرا دیتابیس ، وب سرور و مرورگر وجود دارند. برنامه های کاربردی N-tier آنهایی هستند که حداقل یک ردیف دیتابیس  ، یک tier میانی(که سرویس می دهد) و یک client tier داشته باشند.


از تعاریف دیگر multi-tier architecture معماری کلاینت سرور با جداسازی منطقی مدیریت داده ، پردازش برنامه
و نمایش می باشد.

منبع : برگرفته از مقاله ی Anti-Patterns To Avoid In Entity Framework N-Tier Applications

مقایسه ی Linq TO SQL  و Entity Framework

مقایسه ی Linq TO SQL  و Entity Framework

 

Linq To SQL :

Linq To Sql  با هدف تولید سریع نرم افزارهای مرتبط با SQL Server بوجود آمد.

مزایا:

1.      Lazy Loading of Data

2.      تولید کلاسها و متدها بصورت partial  که امکان ایجاد Business Logic دلخواه و وارثت را برای برنامه نویس  فراهم می کند

3.      امکان بهینه سازی اجرا بوسیله Compiled Query  و Stored Procedure

4.      map many-to-many relationships با استفاده از کلاس میانی

Entity Framework  :

سناریوی اصلی و هدف EF انعطاف بیشتر ، mapping  پیچیده تر و ایجاد مدل داده ای مفهومی است. که علاوه بر امکانات Linq  To Sql  مزایای دیگری را نیز فراهم کرده است.

مزایا:

1.      مستقل از دیتابیس : بدلیل وجود فراهم کنندگان EF برای دیتابیسهای مختلف از قبیل Oracle ، MySQL ، DB2 و...  نیازی به نوشتن کوئری های متفاوت بر اساس دیتابیس نمی باشد و تنها با کوئری های LINQ می توان با با انواع منابع دیتا ارتباط برقرار کرد.

2.      پشتیبانی از POCO  (Plain Old CLR Objects)

3.      پشتیانی از Model-First  : ایجاد مدل قبل از ایجاد دیتابیس

4.      Lazy Loading of Related Objects

5.      پشتیبانی از نامگذاری Plurality

6.      پشتیبانی از Complex Type

7.      map many-to-many relationships بدون نیاز به کلاس میانی و بصورت مستقیم (مپ کردن یک کلاس به چند جدول)

8.      نمایش لایه مفهومی با استفاده از EDM

9.      قابلیت اشتراک یک مدل از میان Replication, Reporting Services, BI, Integration Services و...


منبع : MSDN

طراحی حرفه ای وب سایت در مشهد و تمام نقاط کشور

طراحی حرفه ای وب سایت در مشهد و تمام نقاط کشور

وب سایت SiteDesignIran.com با هدف ارائه خدمات تخصصی در حوزه طراحی وب سایت و برنامه نویسی فعالیت خود را در شهر مقدس مشهد و با تیمی جوان آغاز نمود .


فعالیت های مجموعه سایت دیزاین ایران:

طراحی وب سایتهای دینامیک Asp.net , SQL Server 2008

بازاریابی اینترنتی ، ایمیلی

برنامه نویسی ویندوز ، تحت شبکه ، اندروید


استخدام برنامه نویس ASP.NET در مشهد

استخدام برنامه نویس ASP.NET در مشهد

شرکت شکوفا سیستم خلاق از برنامه نویسان asp.net دعوت به همکاری می نماید
تلفن تماس : 2220483
همراه : 09157690095
آدرس : نبش مدرس 1-ساختمان شکوفا-واحد 604


خطای Validation of viewstate MAC failed

خطای Validation of viewstate MAC failed

این خطا یکی از مشکلات متداول در سایت های مبتنی بر asp.net می باشد که بیشتر زمانی بوجود می آید که از کنترل gridview در یک صفحه استفاده کنیم. برای این مشکل راه حل های زیادی مطرح شده است. دو تا راه حل در انجمن برنامه نویس بود که من راه حل اول را تست کردم و جواب گرفتم.

لینک راه حلهای سایت برنامه نویس

هاست رایگان ASP.net

هاست رایگان ASP.net

کسانی که نیاز به هاست برای پروژه های دانشجویی دارند سایت somee.com میزبانی سایتهای .net رو بصورت رایگان انجام می دهد.

امکانات هاست رایگان:

  • 150MB storage
  • 5GB network transfer
  • ASP ASP.Net 1.1-4.0 PHP
  • 15MB MS SQL 2005 or 2008 R2
  • Free third level domain
  • FTP access
  • www.Somee.com

تغییر Collation دیتابیس sql server

Change Database Collation

برای تغییر Collation دیتابیس از اسکریپت sql زیر می توان استفاده کرد :

ALTER DATABASE {your database} SET SINGLE_USER WITH ROLLBACK IMMEDIATE
ALTER DATABASE {your database} COLLATE Latin1_General_Cl_Al
ALTER DATABASE {your database} SET MULTI_USER
برای اتصال به دیتابیس در PDA Windows CE 5 بدلیل عربی بودن Collation با خطای PlatformNoSupported مواجه شدم که با اجرای اسکریپت فوق مشکلم حل شد.

ديتابيس قرآن

ديتابيس قرآن

Guran Database

سايت ذيل براي برنامه نويسان و توسعه دهندگان بانك اطلاعاتي قرآن كريم را در زبانهاي زنده دنيا و در فرمتهاي مختلف از قبيل My SQL , MS SQL, Access , XML و... گردآوري كرده است.

qurandatabase.org

استفاده از Transactions در asp.net

استفاده از Transactions در asp.net

 با استفاده از ترانزاکشن می توان اعمال تغییرات توسط مجموعه ای از دستورات sql را کنترل کرد به طور مثال می توان تعیین کرد که اگر تمام دستورات با موفقیت اجرا شدند تغییرات بر روی دیتابیس اعمال شود در غیراینصورت دیتابیس به حالت قبل برگردد.

در لینک ذیل نمونه کد ساده ای برای استفاده از transaction در dot net framework نوشته شده است :

Transactions in ASP.NET