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

اعتبارسنجی فایل‌های تصویر که کاربر به سایت ارسال می‌کند، لازم است تا در سمت سرور انجام شود. ولی برای افزایش کارایی و بهبود تجربه کاربری، می‌تواند بخشی از اعتبارسنجی را به صورت موازی در سمت مشتری یا فرانت‌اند نیز به انجام رسانید.
اعتبارسنجی فایل‌های تصویر قبل از آپلود با جاوااسکریپت
نظرات مطالب
شروع به کار با EF Core 1.0 - قسمت 14 - لایه بندی و تزریق وابستگی‌ها
با عرض سلام و تشکر
1. در پروژه برای کلاس Product و Category، مثالی برای اعمال CRUD در سطح کنترلر ارائه نشده، یا من پیدا نکردم؟ یا چون در بحث Identity نبوده تکمیل نشده این قسمت.
در این پروژه آیا برای انجام عملیات CRUD، به روشی که در پروژه «اعتبار سنجی مبتنی بر Jwt در ASP.net Core 2.0 بدون استفاده از سیستم Identity» معرفی کردین عمل کنم ؟

2. تفاوت طراحی این دو پروژه در قسمتهای تزریق وابستگی، و دقیقا انجام عملیات CRUD در کنترلرهای سطح پروژه وب، چیست ؟

نظرات مطالب
طراحی گردش کاری با استفاده از State machines - قسمت اول
قسمت بعدی این سری را مطالعه کنید. نحوه‌ی طراحی یک گردش کاری توسط کتابخانه‌ی Stateless بیان شده. نمونه مثالی هم برای آن ذکر شده‌است. راه اندازی آن در وب یا دسکتاپ تفاوتی نمی‌کند. متد Save کلاس BlogPostManager که در ابتدای کار فراخوانی شود، قسمت بعدی گردش کاری فعال می‌شود. نفر بعدی بر اساس تصمیم خود (مثلا پس از دریافت ایمیل حاصل از save و دریافت آدرسی برای واکنش)، این گردش کاری را به حالتی دیگر ارتقاء خواهد داد.
نظرات مطالب
نحوه کاهش مصرف حافظه EF Code first حین گزارشگیری از اطلاعات
مورد مدنظر شما اصطلاحا paging نام دارد و در گزارش گیری‌های خصوصا برنامه‌های تحت وب که گرید نهایی را برنامه نویس با کدنویسی و ارائه منبع داده مناسبی طراحی و پیاده سازی می‌کند، بسیار مرسوم است (یک Take و Skip است در سمت کوئری LINQ نوشته شده). مثلا:
«واکشی اطلاعات به صورت chunk chunk (تکه تکه) و نمایش در ListView»
این قابلیت اگر در نرم افزارهای گزارشگیری یاد شده، پیاده سازی شده‌‌است (مانند مثال یاد شده MaximumRows و StartRowIndex را هربار در اختیار برنامه نویس قرار می‌دهند)، آنگاه قابل استفاده و پیاده سازی خواهد بود. در غیراینصورت، کار خاصی را نمی‌توان انجام داد و باید مطابق نیاز تجاری آن‌ها رفتار کرد.
نظرات مطالب
معرفی فریم ورک Blueprint CSS
سلام و تشکر فراوان
به نظر بنده این CSS Framework یک مشکل کوچک دارد و اون محدودیت عرض هستش و رویکرد جدیدی که در طراحی وب سایت‌ها مطرح هستش رو در نظر نگرفتند. سایتهایی که محدودیت عرض ندارند و بنا به رزولوشن صفحه کاربر عرض اونا تغییر میکنه و در حقیقت فقط یک minwidth دارند.یه چیزی شبیه به فریم ورک YAML
آیا همچون طرح هایی شبیه به همین سایت   اشکالی دارند؟ یا این مساله به سلیقه بستگی دارد
ممنون
نظرات مطالب
سازگار سازی EFTracingProvider با EF Code first
مدتهاست که EF رو پیگیری میکنم ولی هنوز در مورد پروژه خودم به نتیجه ای نرسیدم.

پروژه ای که من دارم دیتابیس آن کاملاً ساخته شده و بر اساس دیتابیس، کلاسهای مرتبط با آن (BLL) نیز نوشته شده است. ولی کلاس‌های DAL رو ننوشتم تا اینکه با EF آشنا شدم.

میخواستم ببینم که اگه از DB First استفاده کنم چطور میتونم از کلاسهای نوشته شده قبل استفاده کنم؟ یا چطور میتونم جداول رو با کلاسهایی که خودم نوشتم مرتبط کنم؟ کلا اینکار پیشنهاد میشه یا خیر؟

اگه از CodeFirst استفاده کنم، تکلیف Db طراحی شده خودم چی میشه؟ چون دیتابیسی که EF ایجاد میکنه رو اصلاً نمیپسندم.

در کل آیا EF روشی برای ارتباط Code First و Db First داره؟

آیا با اینهمه کدهای پیچیده ای که EF ایجاد میکنه میشه ازش در پروژه‌های وب بزرگ که ترافیک سنگینی دارند استفاده کرد؟

در کل نظر خود شما چی هست؟
نظرات مطالب
ایجاد یک Repository در پروژه برای دستورات EF
IQueryable فقط یک expression است. هنوز اجرا نشده. (expose آن از طریق وب سرویس اشتباه است و به مشکلات serialization برخواهید خورد.)
زمانیکه ToList، First و امثال آن روی این عبارت فراخوانی شود تبدیل به SQL شده و سپس بر روی بانک اطلاعاتی اجرا می‌شود. به این deferred execution یا اجرای به تعویق افتاده گفته می‌شود.
اگر این عبارت را در اختیار لایه‌های دیگر قرار دهید، یعنی انتهای کار را بازگذاشته‌اید و حد و حدود سیستم شما مشخص نیست. شما اگر IQueryable بازگشت دهید، در لایه‌ای دیگر می‌شود یک join روی آن نوشت و اطلاعات چندین جدول دیگر را استخراج کرد؛ درحالیکه نام متد شما GetUsers بوده. بنابراین بهتر است به صورت صریح اطلاعات را به شکل List بازگشت دهید، تا انتهای کار باز نمانده و طراحی شما نشتی نداشته باشد.
نظرات مطالب
پیاده سازی رخداد گردانهای یک شیء در الگوی MVP
ابتدا وب فرم مورد نظر اینترفیس IGridView را پیاده سازی می‌کند و سپس در Code behind در Page_Load یک وهله از presenter با پارامتر this ایجاد می‌کنید، در نتیجه کلیه رخدادها در presenter مدیریت می‌شوند.
نکته در این است که چون هر بارگذاری صفحه نیاز به متصل کردن رخدادها به شی هستیم مجبوریم در Page_Load یک وهله از presenter ایجاد کنیم.
در این پست هدف پیاده سازی مدل نبوده است، ولی شما می‌توانید مدل خود را با توجه به الگوی MVP طراحی کنید و از آن در presenter استفاده کنید.
نظرات مطالب
سایت‌های مهمی که از ASP.NET MVC استفاده می‌کنند
بعید می‌دونم. علتش به توسعه پذیری SharePoint بر می‌گرده که بر اساس معماری وب فرم‌ها از ابتدا طراحی شده. اگر بروند سراغ MVC تمام افزونه‌های قبلی از کار می‌افته یا به شدت مشکل پیدا می‌کنند. ضمن اینکه SharePoint پلتفرم واقعا عظیمی است. خیلی هزینه‌بر است تبدیل آن.
برای مثال شاید همین سوال در مورد IE هم باشد. چرا IE رو با دات نت نمی‌نویسند؟ علتش این است که بعد از این همه سال میلیون‌ها دلار خرج code base آن شده. دور ریختن و دل کندن از آن واقعا سخت است.
نظرات مطالب
ASP.NET MVC #6
کسی که دانشی در مورد وب فرم‌ها نداره چطور می‌تونه مثلا ستون‌های یک GridView رو طراحی و بایند کنه؟ برای نمونه یک گزارش رو دربیاره؟ اینجا هم به همین ترتیب. یک ترکیب کلی صفحه وجود دارد که طراح می‌تونه صرفنظر از اینکه کار شما PHP است یا ASP.NET در بیاره. مثلا یک فایل PSD  به شما تحویل بده (روش مرسوم). یک قسمت‌هایی هم باقی خواهد ماند که باید برنامه نویس پرکنه زمانیکه این فایل PSD رو تبدیل به قالب سایت کرد. زمانیکه master page رو درست کرد. المان‌ها رو در جاهای مختلف جایگذاری کرد.