نظرات مطالب
اعتبارسنجی در Entity framework Code first قسمت اول
من از ValidationHelper  که شما قرار دادید در کلاس زیر استفاده کردم و baseentity  از کلاس زیر مشتق شده تا تمام موجودیت‌ها اینترفیس IDataErrorInfo  رو برای wpf پیاده کرده باشند.
 public abstract class DataErrorInfo :ObservableObject, IDataErrorInfo
    {
        [Browsable(false)]
        public string Error
        {
            get
            {
                var errors = ValidationHelper.GetErrors(this);
                return string.Join(Environment.NewLine, errors);
            }
        }

        public string this[string columnName]
        {
            get
            {
                var errors = ValidationHelper.ValidateProperty(this, columnName);
                return string.Join(Environment.NewLine, errors);
            }
        }
    }

نظرات مطالب
معماری لایه بندی نرم افزار #4
شما گفتید:

سلام با تشکر از شما
من نفهمیدم که توی ASP.NET MVC شما چگونه از الگوی MVP استفاده کردین؟
ظاهرا مثال این قسمت هم توی پست وجود نداره، اگر اشتباه می‌کنم لطفا تصحیح بفرمایید. 

با خواندن کامنت شما برداشت کردم شما تصور کردید کدهای پست جاری مربوط به تکنولوژی ASP.NET MVC هست.

به نظر نویسنده هنوز برای MVC و WPF مثال‌ها را ایجاد نکرده و توضیح نداده اند.
اما برای استفاده از این نوع معماری در MVC کار خاصی لازم نیست انجام شود. همانطور که قبلا در مثال‌های آقای نصیری دیده ایم کافی است Service Layer در Controller مدل مناسب را تغذیه کند و برای View فراهم کند.

نظرات مطالب
ObservableCollection در Entity Framework
با سلام.
در پروژه WPF در لایه سرویس یکبار Local رابر میگردانم مانند زیر :
 public override IList<City> GetAll()
        {
            var query = from item in _tEntities
                        select item;
            query.Load();
            return _tEntities.Local;
        }
همه چیز درست است ولی وقتی برای جستجو متد زیر را اجرا می‌کنم باز Local شامل همان داده‌های قبلی است:
 public override IList<City> GetAll(Func<City, bool> predicate)
        {
            var query = from item in _tEntities
                        select item;
            query.Where<City>(predicate);
            query.Load();
            return _tEntities.Local;
        }
لطفاً راهنمایی کنید.

نظرات مطالب
Implementing second level caching in EF code first
ممنون بابت پاسخ سریع،
ولی برنامه من، حتی در Paging هم سرعت مورد انتظار من رو نداره. توی برنامه WPF من، هر بار ورق زدن، 15 رکورد ناقابل بارگذاری میشه و طی برسی  که انجام دادم بیشتر این مدت (از نیم ثانیه، 350 میلی ثانیه به کوئری اختصاص داره و بقیش شامل کارهایی مثل اعمال DataTemplate و Render و ...) و می‌خوام این زمان رو تا حد ممکن کمتر کنم. با خودم گفتم این لیست به ندرت ویرایش میشه. فقط Insert به طور روزانه انجام میشه و عمل حذف بسیار نادر رخ میده. اطلاعات صفحه اونقدر از نظر امنیتی اهمیت ندارند.
بانک اطلاعاتی مورد استفاده من، SQL Compact 4.0 است و از Entity Framework 4.3.1 و روش Code First استفاده می‌کنم.
نظرات مطالب
محاسبه مجدد میزان مصرف حافظه‌ی برنامه‌های دات نت
با دات نت 2 هم کار می‌کنه. مطابق مستندات MSDN کلاس پروسس از زمان دات نت یک اضافه شده:
Process Class Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0
زمان دات نت 2 با توجه به اینکه WPF نبوده بنابراین بحث WinForms مطرح است و رویداد Idle هم از زمان دات نت یک وجود داشته:
Idle Event
Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0
نظرات مطالب
خلاصه‌ای کوتاه در مورد WinRT
علاوه بر این‌ها امکانات فعلی WinRT‌ کمتر از نمونه‌ی موجود در دات نت است. کتابخانه‌‌های XAML آن کلا با CPP بازنویسی شده و متکی بر دات نت نیست. WinRT XAML تنها قسمتی از XAML در دسترس دات نت را ارائه می‌دهد مثلا DataTriggers و غیره آن فعلا پیاده سازی نشده. همچنین برفراز WinRT شما تنها به قسمتی از کل دات نت فریم ورک دسترسی دارید که به آن اشاره شد (همان sandbox معروف). خلاصه توانایی‌های XAML آن به هیچ عنوان جایگزین کامل WPF دات نت نمی‌تواند باشد.
نظرات مطالب
Static Reflection
بله. این هم یکی از کاربردهای static reflection‌ در عمل است که در WPF و سیلورلایت می‌تونه مورد استفاده قرار بگیره.
هدف هم حذف رشته ذکر شده در متدهای متداول و اجباری PropertyChanged است که باید به ازای هر خاصیت نوشته شود.
این رشته‌ها (آرگومان‌های PropertyChanged) چون دقیقا همان نام خاصیت‌های تعریف شده در کلاس جاری هستند، بنابراین با استفاده از lambda به عنوان داده (توسط کلاس expression و func) به صورت strongly typed و همچنین قابل تشخیص توسط intellisense می‌توانند تفسیر و قابل دسترسی شوند. زمانیکه  Expression Func of T را بجای آرگومان رشته‌ای تعریف کردید، خواص این T توسط intellisense و lambda expression ظاهر می‌شوند. تا اینجا یک مرحله پیشرفت است (شما دیگر رشته ننوشته‌اید و کد هست به عنوان داده). مرحله بعد ترجمه این کد هست به همان رشته. نهایتا متد PropertyChanged نیاز به رشته دارد. اینجا است که کلاس Expression وارد عمل می‌شود و کد را به داده مورد نظر ترجمه می‌کند.
نظرات مطالب
ارتقاء از WinForms به WPF
- تعریف شما از ریسک چی هست؟ از چه چیزی واهمه دارید؟! یا اگر به wpf‌ مهاجرت کردید چه چیزی را از دست خواهید داد؟!
"تفاوت‌های یک برنامه نویس کارمند با یک برنامه نویس علاقمند" را مطالعه کردید؟
https://www.dntips.ir/2010/02/blog-post.html

برای یک کارمند شاید زیاد فرقی نکنه. حق با شماست.

- ضمنا ظاهر زیبا فقط قسمتی از قابلیت‌هایی است که بدست می‌آورید؟ سیلورلایت که برادر کوچکتر wpf محسوب می‌شود را هم فراموش نکنید. با یک تیر دو نشان (البته نیاز به رعایت یک سری مسایل دارد).

اگر وقت کردید مطلب زیر را مطالعه کنید تا ابعاد مزایای این مهاجرت را به صورت تخمینی درک کنید:
https://www.dntips.ir/2009/09/wpf.html
نظرات مطالب
چرا در سازمان‌ها برنامه‌های وب جایگزین برنامه‌های دسکتاپ شده‌اند (یا می‌شوند)؟
سلام مهندس . جالب بود و در اکثر کشور ها با توجه به افزایش سرعت اینترنت به این سمت گرایش داشتند . در آلمان در ایستگاه قطار یا آژانس هواپیمایی و ... به همین شکل هست و یا حداقل از یک وب سرویس بهره میبرند حتی اگر برنامه ویندوز داشته باشند . در آمریکا هم تا اونجا که میدونم silverlight و wpf به این منظور ( جهت همسان سازی محیط اینترنت و ویندوز ) استفادش رو به رشد هست . راستی آقای نصیری شما رو silverlight مانور نمیدید . یه مدتی هست که از Jquery چیزی نمیگید . منتظر مطالب جدیدتون هستم . موفق باشید .