#Yeke #ModelBinder #EntityFramework
مشکل ی و ک فارسی و عربی در یک دیتابیس اس کیوال سرور
https://bit.ly/1dx7jL3
یکسان سازی "ی" و "ک" دریافتی در حین استفاده از Entity framework
https://bit.ly/1FOlkym
یکدست کردن "ی" و "ک" در ASP.NET MVC با پیادهسازی یک Model Binder
https://bit.ly/1J4MS3A
مشکل ی و ک فارسی و عربی در یک دیتابیس اس کیوال سرور
https://bit.ly/1dx7jL3
یکسان سازی "ی" و "ک" دریافتی در حین استفاده از Entity framework
https://bit.ly/1FOlkym
یکدست کردن "ی" و "ک" در ASP.NET MVC با پیادهسازی یک Model Binder
https://bit.ly/1J4MS3A
Forwarded from طراحی و توسعه وب
https://nikamooz.com/binary-data/
پادکست مربوط به ذخیره سازی فایل های باینری حجیم در دیتابیس ✅ البته با استفاده از امکانات filestream و filetable در sql server
از دست ندین... کتاب مرجع filestream و filetable رو هم آپلود میکنم خدمت دوستان عزیز 😊
پادکست مربوط به ذخیره سازی فایل های باینری حجیم در دیتابیس ✅ البته با استفاده از امکانات filestream و filetable در sql server
از دست ندین... کتاب مرجع filestream و filetable رو هم آپلود میکنم خدمت دوستان عزیز 😊
نیک آموز
رادیو نیک آموز: ذخیره داده های باینری در Database
همیشه یکی از بزرگترین چالش های برنامه نویسان نحوه ذخیره داده های باینری در بانک های اطلاعاتی بود، در این پادکست صوتی داده های باینری را بررسی خواهیم کرد.
Forwarded from طراحی و توسعه وب
آیا شما هم در هنگام شروع به کار با زبان جاوااسکریپت به عنوان یک زبان شی گرا ولی بدون وجود کلاس ها دچار سردرگمی شدید؟! آیا مباحث مربوط به شی گرایی در جاوااسکریپت برایتان نا ملموس هست؟
در این مقاله به یکی دیگر از امکانات جدید ES 6 که مربوط میشود به کلاس ها خواهیم پرداخت :https://www.dotnettips.info/post/2300/%da%a9%d9%84%d8%a7%d8%b3%e2%80%8c%d9%87%d8%a7-%d8%af%d8%b1-es-6
در این مقاله به یکی دیگر از امکانات جدید ES 6 که مربوط میشود به کلاس ها خواهیم پرداخت :https://www.dotnettips.info/post/2300/%da%a9%d9%84%d8%a7%d8%b3%e2%80%8c%d9%87%d8%a7-%d8%af%d8%b1-es-6
#Concurrency, #EntityFramework
حل مسائل همزمانی در EF
در حالت کلی دو روش برای حل مسائل همزمانی وجود دارد:
1. Pessimistic Concurrency (Locking)
2. Optimistic Concurrency
در روش اول از database lock استفاده میشود. مثلا برای خواندن یک رکورد از دیتابیس بسته به نیازتان درخواست دسترسی update یا read-only میدهید، که در این صورت اجازه ی lock کردن توسط سایر کاربران برای آن رکورد را میگیرید. اما این روش معایب زیادی دارد و برنامه نویسی را پیچیده میکند و به منابع مدیریتی قوی دیتابیس احتیاج دارد و EF هم به صورت توکار آن را پشتیبانی نمیکند.
اما روش دوم به این معناست که اجازه ی دسترسی همزمان به کاربران را میدهد، ولی اگر این اتفاق بیفتد، عکس العمل مناسب را نشان خواهید داد. مثلا فرض کنید کاربر الف صفحه ی ویرایش را باز میکند و فیلد مورد نظرش را تغییر میدهد، حال قبل از اینکه تغییراتش را ذخیره کند، کاربر ب هم همان صفحه را باز میکند، در ادامه کاربر الف کارش تمام میشود و دکمه ی سیو را میزند و تغییرات در دیتابیس مینشیند، اما به محض ثبت تغییرات از طرف کاربر ب با exception مواجه میشود که این صفحه قبلا ویرایش شده است، در این حالت میشود تعیین کرد که اصلا اجازه ذخیره سازی نداد و یا اینکه با تایید خود کاربر، تغییرات جدید روی قبلی بنشیند و یا اینکه با یک سری روش های پیچیده فهمید کدام فیلدها را کاربر الف ویرایش کرده و اگر مشترک نبود، اجازه ی ذخیره بدهد. اما چیزی که مهم است این است که ما میتوانیم این نوع conflict را با استفاده از EF هندل کنیم، یعنی EF یک اکسپشن از نوع OptimisticConcurrencyException را throw میکند که بعد از آن ما میتوانیم تصمیمان را بگیریم چکار کنیم. برای این منظور هم باید یک سری تنظیمات را روی دیتابیس و مدلمان انجام دهیم، مانند اضافه کردن ستونی از نوع rowversion که هر زمان آپدیت صورت بگیرد، این مقدار به روزرسانی میشود.
تنظیمات دقیق EF را میتوانید از بخش ConcurrencyCheck و Timestamp از لینک زیر مطالعه نمایید:
https://www.dotnettips.info/Post/833/EF-Code-First-3
حل مسائل همزمانی در EF
در حالت کلی دو روش برای حل مسائل همزمانی وجود دارد:
1. Pessimistic Concurrency (Locking)
2. Optimistic Concurrency
در روش اول از database lock استفاده میشود. مثلا برای خواندن یک رکورد از دیتابیس بسته به نیازتان درخواست دسترسی update یا read-only میدهید، که در این صورت اجازه ی lock کردن توسط سایر کاربران برای آن رکورد را میگیرید. اما این روش معایب زیادی دارد و برنامه نویسی را پیچیده میکند و به منابع مدیریتی قوی دیتابیس احتیاج دارد و EF هم به صورت توکار آن را پشتیبانی نمیکند.
اما روش دوم به این معناست که اجازه ی دسترسی همزمان به کاربران را میدهد، ولی اگر این اتفاق بیفتد، عکس العمل مناسب را نشان خواهید داد. مثلا فرض کنید کاربر الف صفحه ی ویرایش را باز میکند و فیلد مورد نظرش را تغییر میدهد، حال قبل از اینکه تغییراتش را ذخیره کند، کاربر ب هم همان صفحه را باز میکند، در ادامه کاربر الف کارش تمام میشود و دکمه ی سیو را میزند و تغییرات در دیتابیس مینشیند، اما به محض ثبت تغییرات از طرف کاربر ب با exception مواجه میشود که این صفحه قبلا ویرایش شده است، در این حالت میشود تعیین کرد که اصلا اجازه ذخیره سازی نداد و یا اینکه با تایید خود کاربر، تغییرات جدید روی قبلی بنشیند و یا اینکه با یک سری روش های پیچیده فهمید کدام فیلدها را کاربر الف ویرایش کرده و اگر مشترک نبود، اجازه ی ذخیره بدهد. اما چیزی که مهم است این است که ما میتوانیم این نوع conflict را با استفاده از EF هندل کنیم، یعنی EF یک اکسپشن از نوع OptimisticConcurrencyException را throw میکند که بعد از آن ما میتوانیم تصمیمان را بگیریم چکار کنیم. برای این منظور هم باید یک سری تنظیمات را روی دیتابیس و مدلمان انجام دهیم، مانند اضافه کردن ستونی از نوع rowversion که هر زمان آپدیت صورت بگیرد، این مقدار به روزرسانی میشود.
تنظیمات دقیق EF را میتوانید از بخش ConcurrencyCheck و Timestamp از لینک زیر مطالعه نمایید:
https://www.dotnettips.info/Post/833/EF-Code-First-3
Forwarded from Mohammad Ebrahimi
Forwarded from Mohammad Ebrahimi
#Shortcut #VisualStadio
کلید های میانبر (Shortcut) در VisualStadio 2012
https://goo.gl/nYjbQw
کلید های میانبر (Shortcut) در VisualStadio 2013
https://goo.gl/5fKfI2
کلید های میانبر (Shortcut) در VisualStadio 2015
https://goo.gl/Qzk3qg
کلید های میانبر (Shortcut) در VisualStadio - لینک ماکروسافت
https://goo.gl/AHnwaU
کلید های میانبر (Shortcut) در VisualStadio 2012
https://goo.gl/nYjbQw
کلید های میانبر (Shortcut) در VisualStadio 2013
https://goo.gl/5fKfI2
کلید های میانبر (Shortcut) در VisualStadio 2015
https://goo.gl/Qzk3qg
کلید های میانبر (Shortcut) در VisualStadio - لینک ماکروسافت
https://goo.gl/AHnwaU
Visualstudioshortcuts
Visual Studio 2012 keyboard shortcuts - complete list
A complete list of all keyboard shortcuts in Visual Studio 2012
Forwarded from Mohammad Ebrahimi
#DosAttack #Hack #Security #AspMvc
جلوگیری از حملات Dos Attack در Asp Mvc
https://goo.gl/eUneAZ
https://goo.gl/hyd68T
جلوگیری از حملات Dos Attack در Asp Mvc
https://goo.gl/eUneAZ
https://goo.gl/hyd68T
Forwarded from Mohammad Ebrahimi
Forwarded from Mohammad Ebrahimi
Forwarded from Mohammad Ebrahimi
Forwarded from Mohammad Ebrahimi
Forwarded from Mohammad Ebrahimi
#Captcha #کپچا #AspMvc
یکی از بهترین پلاگین های کپچا ReCaptchaNet
https://recaptchanet.codeplex.com
https://github.com/tanveery/recaptcha-net
یکی از بهترین پلاگین های کپچا ReCaptchaNet
https://recaptchanet.codeplex.com
https://github.com/tanveery/recaptcha-net
Forwarded from Mohammad Ebrahimi
#Captcha #کپچا #AspMvc
پلاگین CaptchaMvc برای ایجاد کپچا در Mvc
https://goo.gl/oxr3lm
https://captchamvc.codeplex.com/
پلاگین CaptchaMvc برای ایجاد کپچا در Mvc
https://goo.gl/oxr3lm
https://captchamvc.codeplex.com/
#ExtensionMethods
10 متد الحاقی پرکاربرد و بسیار مفید برای توسعه ی برنامه های دات نت
همان طور که میدانید متدهای الحاقی (Extension Methods) این امکان را برای ما فراهم میکنند که به انواع داده و اشیاء دات نتی، بدون تغییر در ساختار آن ها، متدهای دلخواه خود را اضافه کنیم. برای این منظور متد و کلاس دربردارنده ی آن باید static باشند و نیز اولین پارامتر این متد، کلمه ی کلیدی this را همراه داشته باشد. در حالت کلی میتوانید متدهای الحاقی خود را در یک فایل جدا در پروژه مثلا ExtensionMethods.cs ذخیره نمایید که این کلاس باید public و static باشد. بعد از تعریف متدها، میتوانید متدهای الحاقی اضافه شده را همانند سایر instance method ها استفاده کنید. پست زیر 10 متد الحاقی پرکاربرد و مفید را برای توسعه دهندگان دات نت معرفی میکند:
https://www.danylkoweb.com/Blog/10-extremely-useful-net-extension-methods-8J
10 متد الحاقی پرکاربرد و بسیار مفید برای توسعه ی برنامه های دات نت
همان طور که میدانید متدهای الحاقی (Extension Methods) این امکان را برای ما فراهم میکنند که به انواع داده و اشیاء دات نتی، بدون تغییر در ساختار آن ها، متدهای دلخواه خود را اضافه کنیم. برای این منظور متد و کلاس دربردارنده ی آن باید static باشند و نیز اولین پارامتر این متد، کلمه ی کلیدی this را همراه داشته باشد. در حالت کلی میتوانید متدهای الحاقی خود را در یک فایل جدا در پروژه مثلا ExtensionMethods.cs ذخیره نمایید که این کلاس باید public و static باشد. بعد از تعریف متدها، میتوانید متدهای الحاقی اضافه شده را همانند سایر instance method ها استفاده کنید. پست زیر 10 متد الحاقی پرکاربرد و مفید را برای توسعه دهندگان دات نت معرفی میکند:
https://www.danylkoweb.com/Blog/10-extremely-useful-net-extension-methods-8J
DanylkoWeb
10 Extremely Useful .NET Extension Methods
Since Extension methods were introduced in C# 3.0, I have constantly been looking for ways to extend classes to ease my coding pain. Here are my 10 favorite extension methods.
Forwarded from Mohammad Ebrahimi
#DatePicker #DateTimePicker #Calendar #Plugin
تقویم جاواسکریپتی فارسی با پشتیبانی از تاریخ شمسی
https://goo.gl/fxmiMl
https://goo.gl/xEMyQ3
تقویم جاواسکریپتی فارسی با پشتیبانی از تاریخ شمسی
https://goo.gl/fxmiMl
https://goo.gl/xEMyQ3
Forwarded from Mohammad Ebrahimi
#DatePicker #DateTimePicker #Calendar #Plugin #jQueryUI
تقویم جاواسکریپتی فارسی با پشتیبانی از تاریخ شمسی
https://sundev.ir/dl/685445
تقویم جاواسکریپتی فارسی با پشتیبانی از تاریخ شمسی
https://sundev.ir/dl/685445