نگاشت خودکار مجموعهها در Fluent NHibernate ساده است و نیاز به تنظیم خاصی ندارد. برای مثال IList به صورت خودکار به Bag ترجمه میشود و الی آخر.البته شاید سؤال بپرسید که این Bag از کجا آمده؟ کلا 6 نوع مجموعه در NHibernate پشتیبانی میشوند که شامل Array، Primitive-Array ، Bag ، Set ، List و Map هستند؛ این اسامی هم جهت حفظ سازگاری با جاوا تغییر نکردهاند و گرنه معادلهای آنها در دات نت به این شرح هستند:Bag=IListSet=Iesi.Collections.ISetList= ...
یکی از موارد مشکل ساز حین استفاده از T-SQL ، مقدار دهی اولیه متغیرها به نال است و اگر اسکریپت تهیه شده کمی طولانی باشد، خطایابی مشکلات مرتبط با آن بسیار مشکل میشود. برای مثال:Declare@x int,@y intSet @x = 1If (@x + @y = 1)BEGIN print 'yes!'EndSet @y = (select sum(id) from Account)If @x + @y = 1BEGIN print 'yes!'Endکد فوق بدون هیچگونه خطایی اجرا میشود و هیچ وقت هم yes را چاپ نمیکند. مشکل هم همینجا است. خطایابی قسمت دوم این اسکریپت کمی م ...
در مورد طراحی یک برنامه "فرم ساز" در مطلب قبلی بحث شد ... حدودا سه سال قبل اینکار را برای شرکتی انجام دادم. یک برنامه درخواست خدمات نوشته شده با ASP.NET که مدیران برنامه میتوانستند برای آن فرم طراحی کنند؛ فرم درخواست پرینت، درخواست نصب نرم افزار، درخواست وام، درخواست پیک، درخواست آژانس و ... فرمهایی که تمامی نداشتند! آن زمان برای حل این مساله از فیلدهای XML استفاده کردم.فیلدهای XML قابلیت نه چندان جدیدی هستند که از SQL Server 2005 به بعد ...
یکی از قابلیتهای جالب NHibernate امکان تعریف فیلدها به صورت پویا هستند. به این معنا که زیرساخت طراحی یک برنامه "فرم ساز" هم اکنون در اختیار شما است! سیستمی که امکان افزودن فیلدهای سفارشی را دارا است که توسط برنامه نویس در زمان طراحی اولیه آن ایجاد نشدهاند. در ادامه نحوهی تعریف و استفاده از این قابلیت را توسط Fluent NHibernate بررسی خواهیم کرد.در اینجا کلاسی که قرار است توانایی افزودن فیلدهای سفارشی را داشته باشد به صورت زیر تعریف میشود ...
مشکل نصب به روز رسانیهای دات نت فریم ورکاگر احتمالا آپدیتهای اخیر دات نت فریم ورک را نتوانستهاید نصب کنید و هربار پس از ری استارت کامپیوتر مجددا سر و کله برنامه نصاب پیدا میشود و نهایتا پیغام failed را دریافت میکنید، متاسفانه فقط یک راه حل دارد. حذف موارد موجود و نصب مجدد نگارش جدید آنها. برای حذف کلیه نگارشهای دات نت فریم ورک از برنامه زیر استفاده کنید:.NetFx Cleanup toolسپس بهتر است از نصاب نگارش وب دات نت فریم ورک استفاده کنید. ...
OWSAP ارگانی است غیرانتفاعی که هدف آن ترویج طراحی برنامههای امن وب است. در این راه هم مطالب آموزشی بسیار ارزشمندی را منتشر کرده است [+]. در لینکهای زیر این مطالب از دیدگاه برنامه نویسهای دات نت مورد بررسی قرار گرفتهاند. هر چند مطابق آخرین گزارش WhiteHat که اخیرا منتشر شده [+]، تعداد Exploits مربوط به ASP.NET در مقایسه با PHP و جاوا بسیار کمتر بوده اما نیاز است تا با مشکلات عمومی موجود و راهحلهای مرتبط بیشتر آشنا شد:OWASP Top 10 for . ...
به نظر شما چه تعداد شیء CLR را میتوان در یک ثانیه ایجاد کرد؟برنامه کنسول زیر دو نسخه معمولی و نسخه پردازش موازی یک آزمایش ساده را برای اندازه گیری این مطلب ارائه میدهد:using System;using System.Collections.Generic;using System.Diagnostics;using System.Threading;using System.Threading.Tasks;namespace ObjectInitSpeedTest{ class Program { //Note: don't forget to build it in Release mode. static void Main() { ...
یکی از تفاوتهای مهم امنیتی ویندوزهای جدید (از سرویس پک 2 ویندوز 2003 به بعد)، اجرای سرویسهای ویندوز در جلسهای کاری (سشنی) جدا از جسله کاری برنامههای عادی است که توسط کاربران وارد شده به سیستم اجرا میشوند. در این ویندوزها، تنها سرویسها هستند که در سشن صفر اجرا میشوند و مابقی برنامههای سایر کاربران در سشنهای دیگر.این برخلاف چیزی است که برای مثال در ویندوز XP وجود دارد؛ یعنی اجرای دوستانهی تمام برنامهها در یک سشن (چون کاربر وارد شد ...