DotNetZoom
2.95K subscribers
342 photos
18 videos
36 files
606 links
DotNetZoom
💎 Everything about .NET

ارتباط با مدیر و تبلیغات آگهی استخدام:
@mjebrahimi

لینک گروه ASPNET Core:
https://t.iss.one/+ufG25x7lVFgyYTNk
Download Telegram
Forwarded from طراحی و توسعه وب
https://nikamooz.com/binary-data/
پادکست مربوط به ذخیره سازی فایل های باینری حجیم در دیتابیس البته با استفاده از امکانات filestream و filetable در sql server
از دست ندین... کتاب مرجع filestream و filetable رو هم آپلود میکنم خدمت دوستان عزیز 😊
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
#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
DotNetZoom
programming-world-infographic-full-size.jpg
#Infographic #Programing
اینفوگرافیک جهان برنامه نویسی #جالب
#Bootstrap #HtmlHelper #Dialog
ایجاد پنجره های Bootstrap با HtmlHelper در AspNet Mvc
Forwarded from Mohammad Ebrahimi
#Shortcut #VisualStadio
کلید های میانبر (Shortcut) در VisualStadio
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
Forwarded from Mohammad Ebrahimi
#DosAttack #Hack #Security #AspMvc
جلوگیری از حملات Dos Attack در Asp Mvc
https://goo.gl/eUneAZ
https://goo.gl/hyd68T
Forwarded from Mohammad Ebrahimi
#Captcha #کپچا
استفاده از ReCaptcha در Mvc
https://goo.gl/3mXfP4
Forwarded from Mohammad Ebrahimi
#Captcha #کپچا
ایجاد Captcha با حروف فارسی در MVC
https://bit.ly/1Q9Lvku
Forwarded from Mohammad Ebrahimi
#Captcha #کپچا #AspMvc
پلاگین CAPTCHAfa در mvc
https://bit.ly/1cijny7
Forwarded from Mohammad Ebrahimi
#Captcha #کپچا #AspMvc
User friendly CAPTCHA for Asp.Net MVC
https://goo.gl/wPlqEr
Forwarded from Mohammad Ebrahimi
#Captcha #کپچا #AspMvc
یکی از بهترین پلاگین های کپچا 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/
#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
Forwarded from Mohammad Ebrahimi
#DatePicker #DateTimePicker #Calendar #Plugin
تقویم جاواسکریپتی فارسی با پشتیبانی از تاریخ شمسی
https://goo.gl/fxmiMl
https://goo.gl/xEMyQ3
Forwarded from Mohammad Ebrahimi
#DatePicker #DateTimePicker #Calendar #Plugin #jQueryUI
تقویم جاواسکریپتی فارسی با پشتیبانی از تاریخ شمسی
https://sundev.ir/dl/685445
Forwarded from Mohammad Ebrahimi
#DatePicker #Calendar #Plugin #Bootstrap
تقویم جاواسکریپتی فارسی با پشتیبانی از تاریخ شمسی
https://goo.gl/CIgldI
https://goo.gl/eEz8xA
Forwarded from Mohammad Ebrahimi
#DatePicker #Calendar #Plugin #Bootstrap
تقویم جاواسکریپتی فارسی با پشتیبانی از تاریخ شمسی
https://goo.gl/1xqKni
https://goo.gl/kq3XOe