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
چه مقدار از امکانات #VisualStadio 2015 را می شناسید ؟
https://goo.gl/FKKfPK

Languages :
C# - VB NET - F#
C++
ASP NET
HTML
JavaScript - EcmaScript 6 support
CSS
LESS - SASS
JSON
Node.js
PHP
Python
CoffeeScript
TypeScript
Othere : YAML - Dart - Markdown - Windows PowerShell

Client Side Frameworks :
Apache Cordova
Angular js
React js
Bootstrap CSS
Aurelia
Knockout js
Othere : Backbone - Durandal - Ionic - Ember - Breeze

Package Managers :
NuGet - Bower - npm

Task runners :
Grant - Gulp

Testing :
Unit Test - UI Test
Performance Test - Load Test

====================
https://webtooling.visualstudio.com/languages/

@IranAspMvc
#ImageMagick
کار با تصاویر در دات نت (Convert, Compress, Resize, Crop Images)
https://goo.gl/68LgDx

چندی پیش در مورد بهینه و فشرده سازی تصاویر برای استفاده در وب صبحت کردیم.
یکی از بهترین و بزرگترین کتابخانه های کار با تصاویر Image Magick می باشد
https://www.imagemagick.org/
که لایبرری تحت دات نت آن Magick .Net نام دارد
https://magick.codeplex.com/
و که توسط این کتابخانه که بیش از 100 نوع فرمت تصویری را پشتیبانی میکند میتوان کار های زیر را با تصاویر انجام داد
Convert : تبدیل فرمت تصاویر,
Compress : فشرده و بهینه سازی تصاویر,
Resize : تغییر سایز تصاویر,
Crop : برش تصاویر
Flip, Mirror, Rotate, Distort, Shear and transform images, Adjust image colors, Apply various special effects, Draw text, Lines, polygons, Ellipses
فانکشن های این کتابخانه از طریق Command Line در درسترس و قابل استفاده بوده و علاوه بر آن برای بیش از 18 زبان برنامه نویسی از جمله دات نت، لایبرری منتشر کرده است
این کتابخانه سورس باز بوده و در آدرس مخزن کد زیر قرار دارد
https://github.com/ImageMagick/ImageMagick
آموزش استفاده در دات نت :
https://goo.gl/tWB2D1
آموزش تغییر سایز (resize) کردن تصاویر در دات نت
https://goo.gl/NKPYUg

@IranAspMvc
#EntityFramework, #CodeFirst, #Relation
رفع مشکل کلید خارجی در EntityFramework CodeFirst به هنگام ایجاد Relation

توی Entity Framework Code First وقتی از Navigation Property ها استفاده میکنین در واقع ef میفهمه که یک Relation بر قرار کردید. و خودش فیلدی برای Foreingkey با نام زیر در جدول اضافه میکنه
yourfield_ID
حال اگر خودتون به صورت دستی خصوصتی در کلاس مورد نظر به عنوان کلید خارجی تعریف کردید. حتما باید برای EF مخشص کنید که این Property همان Foreignkey مربوط به Relation شماست تا دیگر خود EF فیلدی را به عنوان Foriegnkey در جدول اضافه نکند
برای مشخص کردن کلید خارجی در EF 2 راه دارید.
1- استفاده از ForeignKey Attribute مثال :
public class Books
{
public int CategoryId { get; set; } //Foreign key
[ForeignKey("CategoryId")]
public Category Category { get; set; }
}
2- استفاده از Fluetn Api مثال :
modelBuilder.Entity<Book> ()
.HasRequired(p => p.Category)
.WithMany(p => p.Books)
.HasForeignKey(p => p.CategoryId);
نکته اینکه کد های fluent api باید در متد OnModelCreating نوشته شود.

@IranAspMvc
#GoogleMap, #Leaflet, #CkEditor
استفاده از گوگل مپ در ویرایشگر متنی تحت وب CkEditor
https://goo.gl/KrD0iP

یکی از بهترین و کامل ترین پلاگین های کار با GoogleMap پلاگین Leaflet می باشد. و مزیت اون سازگاری کامل با موبایل هست
https://leafletjs.com/
این کتابخانه سورس باز بوده و در آدرس زیر دردسترس است
https://github.com/Leaflet/Leaflet
و اما همین پلاگین رو برای ویرایشگر متنی CkEditor نوشته شده و این امکان رو به شما میده که داخل ckeditor مپ جدید ای ایجاد کنین
https://ckeditor.com/addon/leaflet
نمونه:
https://www.ranelpadon.com/sites/all/libraries/ckeditor/plugins/leaflet/demo/index.html

@IranAspMvc
#Bootstrap #Foundation #Skeleton

مقایسه 3 فریمورک bootstrap, foundation, skeleton

https://responsive.vermilion.com/compare.php

@IranAspMvc
#Concurrency , #EntityFramework
چه کسی زودتر ظرف میوه را بر می دارد ؟! (همزمانی / Concurrency)
https://www.codeproject.com/KB/aspnet/6WaysLock/1a.JPG

یکی از مواردی که در پروژه های بزرگ حائز اهمیت است مبحث Concurrency یا همزمانی می باشد
فرض کنید دو نفر همزمان از یک حساب بانکی می خواهند پول برداشت کنند و موجودی 200 تومان است
هر دو کارت بانکی خود را وارد کرده و موجودی 200 تومان را مشاهده میکنند. اولی 200 تومان برداشت میکند. و دومی نیز درخواست برداشت 200 تومان از حساب را انجام میدهد
در اینجا باید شرطی گذاشت که اگر موجودی همچنان 200 تومان هست اجازه برداشت به دومی صادر شود و اگر موجودی فعلی 0 شده اجازه برداشت صادر نشود. که در غیر این صورت سیستم بانکی 200 تومان ضرر خواهد کرد.
اگر بخواهیم فنی بررسی کنیم. برنامه نویس ما، برای ویرایش حساب بانکی، علاوه بر آیدی حساب، موجودی فعلی که درزمان ویرایش وجود داشته را به سمت سرور پاس میدهد که در صورت صحت هر دو شرط عملیات آپدیت وانجام شود.
اینجاست شرط عملیات ما صرفا بر پایه آیدی نبوده و شامل پارامتر های دیگری نیز می شود.
مشابه همین مثال در ویرایش همزمان یک پست در یک وبسایت ممکن است رخ دهد
برای حل این مشکل (همزمانی) باید از روش بالا که توضیح داده شد. و یا روش دیگری که Entity Framework تعبیه کرده است به نام RowVersion استفاده کرد
در این روش یک ستون به نام RowVersion که نوع آن byte[] است به جدول شما اضافه میشود. که این فیلد به صورت افزایشی و غیر تکراری به طور خودکار توسط EF مقدار دهی شود
در واقع با هر بار اپدیت این فیلد مقدار جدیدی میگیرد. نشان میدهد که مقادیر این سطر تغییر یافته است. پس به شخص دیگری که در حال آپدیت کردن همین سطر است هشدار میدهد که شخص دیگری همزمان با شما این سطر را ویرایش کرده است. دیگر اجازه ویرایش نمیدهد. همچنین میتوان مقادیر جدید را به شخص نشان داد و یا اینکه چه کسی آن را ویرایش کرده است

آموزش :
https://goo.gl/3LvklT
https://goo.gl/qekRho

@IranAspMvc
Forwarded from Iran .Net
Forwarded from Iran .Net
تیم ASP.NET انقلابی به پا کرده اند. آخرین پلتفرم آن ها (ASP.NET Core) در تست های این تیم توانسته است تعداد 1.15 میلیون درخواست را در یک ثانیه مدیریت کرده و پاسخ دهد.
این در صورتی است که نسخه ASP.NET 4.6، بر روی همان سخت افزار تنها توانسته است 0.05 میلیون درخواست را در ثانیه پاسخ دهد.
این یعنی چیزی در حدود 2300 درصد افزایش قدرت پاسخگوییِ پلتفرم محبوب ما! 👍
#AspMvc, #CMS, #Orchard, #MvcForum, #NopCommerce

سه سیستم که پیشنهاد می‌شود(نکته مهم: متن باز بودن این سه سیستم هستش):
Orchard -> وب سایت
MvcForum -> فروم
NopCommerce -> فروشگاه
جریان اختراع چرخ رو که میدونید... همون.
در زیر سه لینک مخزن قرار گرفته است:
https://github.com/OrchardCMS/Orchard
https://github.com/YodasMyDad/mvcforum
https://github.com/nopSolutions/nopCommerce/releases/

@IranAspMvc
#JsTree, #TreeView, #Plugin, #AspMvc
نمایش ساختار درختی با jsTree در Asp Mvc
https://www.jstree.com/jstree.png

یکی از بهترین پلاگین های نمایش ساختار درختی jsTree بوده (jstree.com) که قابلیت های زیر را دارا می باشد
Checkbox - ContextMenu - DragAndDrop - Search , ....

آموزش و اطلاعات بیشتر :
Use jsTree in Asp Mvc
https://goo.gl/sJP5Oz

Lazy-loading with jsTree in Asp Mvc
https://goo.gl/z1MPKc

jsTreeWrapper for Asp Mvc
https://jstreemvcwrapper.codeplex.com/

jsTree Sample using Asp Mvc
https://jstresample.codeplex.com

@IranAspMvc
#Loadding

مجموعه ای از Loading های زیبا و مدرن

https://tobiasahlin.com/spinkit/

@IranAspMvc
#AspMvc, #EntityFramework, #CodeFirst, #Project, #Sample, #Source,

سورس چندین پروژه مختلف که با Asp Mvc و EF و ... نوشته شده در زیر هست.
مرور کد هاش رو به همه پیشنهاد میدم. خیلی مفیده و میتونه بهتون ایده بده

سورس پروژه فروشگاه اینترنتی با AspMVC - EF CodeFirst
https://www.dotnettips.info/projects/details/22
https://github.com/rabbal/My-Golden-City-Shop

طراحی فریمورک برای کار با Asp.net MVC و EF به صورت NTier
https://www.dotnettips.info/projects/details/23
https://github.com/rabbal/Mvc5

سورس پروژه سیستم مدیریت سوابق آموزشی با Asp Mvc
https://www.dotnettips.info/projects/details/27
https://github.com/rabbal/Decision

سورس پروژه سامانه برگزاری مسابقات ورزشی با ASP.NET MVC و AngularJS
https://www.dotnettips.info/projects/details/26
https://github.com/MehdiSaeedifar/SportsSystem

سورس سیستم مدیریت محتوای IRIS
https://www.dotnettips.info/projects/details/13
https://github.com/MehdiSaeedifar/iriscms

سورس پروژه فروشگاه اینترنتی (الکترونیک) با معماری سه لایه
https://www.dotnettips.info/projects/details/2

@IranAspMvc
#RestSharp, #HttpApi
Simple REST and HTTP API Client for .NET
کار با Api های Http در سی شارپ

خیلی وقتا میخوایم توی دات نت از Api سرویس های دیگه که به صورت Rest و تحت Http هستند استفاده کنیم.
مثلا Request هایی با متد (Get, Post, Delete, Put, Head, ...) به سرور ارسال کنیم و مثلا Response اون که به صورت Json هست رو بخونیم و ...
در حالت عادی باید از کلاس WebClient یا WebRequest , WebResponse استفاده کنیم که کد نویسی اون کمی سخت و دارای محدودیت هایی هست
پروژه RestSharp در سایت (https://restsharp.org/) که به صورت سورس باز در آدرس زیر قابل دسترسی است همین کار رو ساده کرده و براحتی می تونین از Api های Rest و Http توی دات نت استفاده کنین
https://github.com/restsharp/RestSharp

آموزش:
Part1
https://goo.gl/scOzSq
Part2
https://goo.gl/uvqilO

@IranAspMvc