برنامه نویسی

برنامه نویسی

وبلاگ برنامه نویسی
برنامه نویسی

برنامه نویسی

وبلاگ برنامه نویسی

کارگاههای آموزشی برنامه نویسی و طراحی

آموزش برنامه نویسی ASP.NET (همراه با کارگاه عملی ساخت و تولید فروشگاه الکترونیکی)

آموزش تکنولوژیهای پیشرفته برنامه نویسی و مدیریت پروژه های وب(ASP.NET پیشرفته)

کارگاه عملی مدیریت، ساخت و طراحی صفحات وب همراه با مدیریت سرور

کارگاه عملی ساخت و مدیریت پروژه های تحت ویندوز با استفاده از سی شارپ 2010

Transactionهای پیشرفته و سطوح level isolation

اینجا، مرز transactionها نیست. همانطور که قبلا در توصیف از خصوصیات ACID گفتم، transactionها، لزوما با دقسق ترین تعریف isolated هماهنگ نیست. دلیلش این است که وقتی شما transaction را ایجاد می کنید، می توانید سطح isolation یک transaction را configure کنید.

چرا می خواهید این کار را بکنید؟ performance. در حالی که isolation در تئوری بسیار جالب است، کمونیزم همه اینگونه بود. در واقعیت، قفل کردن گروهی از ردیف ها وقتی که یک transaction روی آن کار می کند، ممکن است به خاطر performance شدنی نباشد. لزوما نباید هر reader را از خواندن یک جدول متوقف کنید، زیرا transaction شما همه چیز را قفل می کند.

برای سبک کردن این نگرانی، .NET دارای قابلیت تعیین کردن سطوح isolation هنگام ایجاد یک transaction است. انجام این کار فقط نیاز به supply کردن یک System.Data.IsolationLevel value به متد BeginTransaction است. Valueهای در دسترس برای SQL عبارتند از:

ادامه مطلب ...

Transaction های دات نت

در .NET،transactionها با کلاس System.Data.SqlClient.SqlTransaction کنترل می شوند. باز هم یک transaction روی یک object SqlConnection وجود دارد و بدین ترتیب شما همه objectهای SqlCommand را با استفاده از آن اتصال ایجاد می کنید. بایید نگاهی به این مثال بیاندازیم.

ادامه مطلب ...