15نکتهی مهم در مورد کروم DevTools
بررسی جزئیات Entity Framework Core
This talk covers:
- What has changed and what remains the same compared to EF6
- EF Migrations: from powershell to the new dnx commands
- Configuration and Initialisation using Dependency Injection.
- DbContext lifecycle management
- How to hack / override EF behaviour.
- Is it ready for Production use? My suggestions for the team
The conclusion of the analysis:
C# Wasm AOT still
has a long way to become a general and performant client side web
programming platform. Note: The usage of the Uno.Wasm.Bootstrap
toolchain may have affected the performance of some of the benchmarks.
Thus, this analysis should not be regarded as a benchmark of the
finalized product. However, note that the Uno platform is using ".NET 6
WebAssembly Mixed mode AOT/Interpreter" (source).
زبان Rust در حال از هم پاشیدن است!
While Rust has earned a dedicated following, it's not without its fair share of controversies and problems. In this video I'll talk about the negative response and backlash from the Rust community in the wake of the most recent controversy, its connections to past incidents, and give my personal thoughts.
مفهوم READ_COMMITTED_SNAPSHOT در EF 6
مواجه میشویم من در دیتابیس از filestreame استفاده کردم برای ذخیره فایلهای مورد نیاز در نرم افزار خودم، میخواستم بدونم آیا استفاده از این روش (filestreame) اصولا خوب هست یا نه؟
خبرنامه ماهیانهی NET Annotated.
یکی از قابلیتهای جالب SQL Server در یک شبکه محلی امکان link و اتصال آنها به یکدیگر است. به این صورت امکان کوئری گرفتن (و یا اعمال متداول SQL ایی) از دو یا چند سرور مختلف با دستورات T-SQL میسر میشود؛ به نحوی که حس یکپارچگی دیتابیسهای این سرورها را حین کوئری نوشتن خواهیم داشت.
برای مثال فرض کنید دو سرور SQL1 و SQL2 را در شبکه داریم. میخواهیم در سرور SQL1 اتصالی را به سرور SQL2 ایجاد کنیم.
USE master
EXEC sp_addlinkedserver
'SQL2',
N'SQL Server'
sp_addlinkedsrvlogin @useself='false ', @rmtsrvname = 'SQL2',
@rmtuser = 'sa',
@rmtpassword = 'pass#'
دستورات T-SQL فوق کار ثبت یک liked server جدید و اعمال مشخصات کاربری که توسط آن قرار است به سرور SQL2 دسترسی داشت، انجام میدهند.
اکنون جهت بررسی این اتصال در سرور SQL1 کوئری زیر را اجرا میکنیم:
select * from sql2.faxManager.dbo.tblErja
که نحوهی فراخوانی جدول مورد نظر باید به صورت Server.DatabaseName.dbo.TableName در آن رعایت شود.
تا اینجا همه چیز خوب است. مشکل از زمانی شروع میشود که بخواهیم تراکنشها را نیز دخالت دهیم و اصولی کار کنیم. برای مثال:
begin distributed tran
select * from sql2.faxManager.dbo.tblErja
commit tran
خطایی که در ویندوز سرور 2003 با آخرین به روز رسانیها ظاهر میشود به صورت زیر است:
OLE DB provider for linked server returned message "The partner transaction manager has disabled its support for remote/network transactions.".
به صورت پیش فرض این نوع تراکنشهای توزیع شده غیرفعال هستند مگر اینکه فعال شوند و روش حل مشکل نیز به صورت زیر میباشد:
قبل از هر کاری به کنسول سرویسهای ویندوز مراجعه کرده و از در حال اجرا بودن سرویس Distribute Transaction Coordinator اطمینان حاصل کنید.
سپس به قسمت زیر مراجعه نمائید:
نود مربوط به Component Service را گشوده و سپس بر روی My Computer کلیک راست کرده و گزینهی خواص را انتخاب کنید.
در صفحهی بازه شده به برگهی MSTDC مراجعه کرده و بر روی دکمهی Security Configuration کلیک نمائید.
اکنون تنظیمات آنرا مطابق شکل زیر تغییر دهید.
این تنظیم باید بر روی هر دو سرور SQL1 و SQL2 انجام شود.
پس از این تغییرات که شامل راه اندازی مجدد سرویس Distribute Transaction Coordinator نیز خواهد شد، مشکل خطای فوق برطرف شده و امکان استفاده از تراکنشها در linked servers نیز میسر میشود.
مشکل دیگری که به آن برخوردم خطای زیر است:
OLE DB provider for linked server returned message "Cannot start more transactions on this session.".
برای حل این مشکل یک سطر زیر را باید به ابتدای کوئری خود اضافه کرد که جزو الزامات تراکنشهای توزیع شده است و به این صورت از rollback کامل تمامی دستورات موجود فراخوانی شده T-SQL در صورت بروز کوچکترین خطایی اطمینان حاصل میکند:
SET XACT_ABORT ON
برای مطالعه بیشتر:
MSDTC Troubleshooting