✅ آپلود فایل های بسیار حجیم در ASP.NET Core
واسه فایل های نه چندان حجیم (مثلا تا 200 الی 300 مگابایت) میتونین از 2 آموزش زیر استفاده کنین که ترفنداشو بهتون میگه
http://www.binaryintellect.net/articles/612cf2d1-5b3d-40eb-a5ff-924005955a62.aspx
https://www.talkingdotnet.com/how-to-increase-file-upload-size-asp-net-core/
🔰 ولی اگه فایل هاتون خیلی حجیم هست (مثلا 500 مگ به بالا تاااااا چندین گیگابایت)
بهتره از روش Chunk (خرد کردن فایل حجیم به تکه های کوچیک تر و سپس آپلود این تیکه ها و نهایتا جمع کردنش سمت سرور) استفاده کنین
🔸سمپل زیر این قابلیت رو به خوبی پیاده سازی کرده
واسه این روش باید هم سمت سرور کدشو بنویسین و هم سمت کلاینت، از پلاگینی استفاده کنین که کار Chunk کردن رو براتون انجام بده (البته دستی هم میشه ولی با پلاگین راحت تره) مثلا این سمپل از پلاگین Resumable.js استفاده کرده
https://github.com/edsoncunha/chunked-file-upload-csharp
نکته : واسه اجرا حتما برنامه رو روی Kestrel اجرا کنین وگرنه در حالت IISExpress محدودیت هایی داره
_______________
@DotNetZoom
واسه فایل های نه چندان حجیم (مثلا تا 200 الی 300 مگابایت) میتونین از 2 آموزش زیر استفاده کنین که ترفنداشو بهتون میگه
http://www.binaryintellect.net/articles/612cf2d1-5b3d-40eb-a5ff-924005955a62.aspx
https://www.talkingdotnet.com/how-to-increase-file-upload-size-asp-net-core/
🔰 ولی اگه فایل هاتون خیلی حجیم هست (مثلا 500 مگ به بالا تاااااا چندین گیگابایت)
بهتره از روش Chunk (خرد کردن فایل حجیم به تکه های کوچیک تر و سپس آپلود این تیکه ها و نهایتا جمع کردنش سمت سرور) استفاده کنین
🔸سمپل زیر این قابلیت رو به خوبی پیاده سازی کرده
واسه این روش باید هم سمت سرور کدشو بنویسین و هم سمت کلاینت، از پلاگینی استفاده کنین که کار Chunk کردن رو براتون انجام بده (البته دستی هم میشه ولی با پلاگین راحت تره) مثلا این سمپل از پلاگین Resumable.js استفاده کرده
https://github.com/edsoncunha/chunked-file-upload-csharp
نکته : واسه اجرا حتما برنامه رو روی Kestrel اجرا کنین وگرنه در حالت IISExpress محدودیت هایی داره
_______________
@DotNetZoom
Telegram
Attach Files
❇️ آموزش ساخت برنامه های توزیع شده (Distributed) توسط Akka.NET (زبان اصلی زیر نویس دار)
از پایین ویدئو گزینه [Subnoscript/captions] میتوانید زیرنویس آن را فعال کنید
مدل Actor به عنوان یک مدل Messaging برای برنامهنویسی توزیع شده و همزمان در مقابل استفاده از Thread ها به حساب میآید.
فریمورک Akka برای استفاده از مدل Actor در زبان Java طراحی شده و Akka.NET فریمورک Port شده آن برای دات نت است.
(اطلاعات بیشتر : Repository - Document)
توسط این فریمورک میتوان برنامه هایی با پرفرمنس و همزمانی بالا را بدون اینکه صراحتا درگیر مدیریت تردها و قفل گذاری شوید بنویسید
[01:35] - Implementations and uses of the actor model
[03:13] - What is an actor?
[10:04] - Actors in the cloud
[12:05] - Running Akka .NET on premise or in cloud
[14:31] - Use cases for Akka .NET
[17:25] - Supported versions of .NET
[18:45] - Running Akka .NET in containers
Useful Links
Petabridge - (Repository)
Akka .NET on GitHub
Akka .NET Bootcamp
Akka .NET Code Samples
____________
@DotNetZoom
از پایین ویدئو گزینه [Subnoscript/captions] میتوانید زیرنویس آن را فعال کنید
مدل Actor به عنوان یک مدل Messaging برای برنامهنویسی توزیع شده و همزمان در مقابل استفاده از Thread ها به حساب میآید.
فریمورک Akka برای استفاده از مدل Actor در زبان Java طراحی شده و Akka.NET فریمورک Port شده آن برای دات نت است.
(اطلاعات بیشتر : Repository - Document)
توسط این فریمورک میتوان برنامه هایی با پرفرمنس و همزمانی بالا را بدون اینکه صراحتا درگیر مدیریت تردها و قفل گذاری شوید بنویسید
[01:35] - Implementations and uses of the actor model
[03:13] - What is an actor?
[10:04] - Actors in the cloud
[12:05] - Running Akka .NET on premise or in cloud
[14:31] - Use cases for Akka .NET
[17:25] - Supported versions of .NET
[18:45] - Running Akka .NET in containers
Useful Links
Petabridge - (Repository)
Akka .NET on GitHub
Akka .NET Bootcamp
Akka .NET Code Samples
____________
@DotNetZoom
Docs
Building distributed applications with Akka.NET
In this episode, Aaron Stannard (@Aaronontheweb) comes on to talk about his open source project, Akka.NET. This is a toolkit and runtime for building highly concurrent, distributed, and fault tolerant event-driven applications on .NET and Mono.[01:35] - Implementations…
Forwarded from انجمن DDD ایران
🔸دعوت از علاقهمندان به سخنرانی در سومین رویداد DDDTalks ایران🔸
انجمن DDD ایران سومین رویداد DDD Talks خود را (رویداد زمستانه) در تاریخ ۱۷ بهمنماه برگزار میکند.
لذا از صاحبنظران و علاقهمندان به سخنرانی در این رویداد دعوت میشود تا با مراجعه به سایت انجمن، موضوع مدنظر خود برای سخنرانی را حداکثر تا تاریخ ۱۰ دی ماه، اطلاع دهند.
https://dddiran.com/call-for-paper/
- ۱ دی ماه ۱۳۹۸
@DDD_IRAN
انجمن DDD ایران سومین رویداد DDD Talks خود را (رویداد زمستانه) در تاریخ ۱۷ بهمنماه برگزار میکند.
لذا از صاحبنظران و علاقهمندان به سخنرانی در این رویداد دعوت میشود تا با مراجعه به سایت انجمن، موضوع مدنظر خود برای سخنرانی را حداکثر تا تاریخ ۱۰ دی ماه، اطلاع دهند.
https://dddiran.com/call-for-paper/
- ۱ دی ماه ۱۳۹۸
@DDD_IRAN
❇️ یک پروژه FullStack سورس باز SPA با Angular 8 و Asp.Net Core 3.1
🔰 تکنولوژی ها و امکانات :
✔️ASP.NET Core 3.1
✔️Entity Framework Core 3.1
✔️Both Sql Server and Sql lite databases are supported
✔️Identity Server 4
✔️Angular 8
✔️Angular CLI 8
✔️Secure - with CSP and custom security headers
✔️SignalR
✔️SASS
✔️Best practices for Angular code organisation.
✔️Clean Architecture for ASP.Net Core code.
✔️PWA support
✔️SSR (Server side rendering)
✔️Fast Unit Testing with Jest.
✔️E2E testing with Protractor.l
✔️Compodoc for Angular documentation
✔️Login and Registration using Identity Server implicit flow
✔️Extensible User/Role identity implementation
✔️Social logins support with token based authentication
✔️Swagger as Api explorer
🔸 مخزن گیتهاب
https://github.com/asadsahi/AspNetCoreSpa
_____________________
@DotNetZoom
🔰 تکنولوژی ها و امکانات :
✔️ASP.NET Core 3.1
✔️Entity Framework Core 3.1
✔️Both Sql Server and Sql lite databases are supported
✔️Identity Server 4
✔️Angular 8
✔️Angular CLI 8
✔️Secure - with CSP and custom security headers
✔️SignalR
✔️SASS
✔️Best practices for Angular code organisation.
✔️Clean Architecture for ASP.Net Core code.
✔️PWA support
✔️SSR (Server side rendering)
✔️Fast Unit Testing with Jest.
✔️E2E testing with Protractor.l
✔️Compodoc for Angular documentation
✔️Login and Registration using Identity Server implicit flow
✔️Extensible User/Role identity implementation
✔️Social logins support with token based authentication
✔️Swagger as Api explorer
🔸 مخزن گیتهاب
https://github.com/asadsahi/AspNetCoreSpa
_____________________
@DotNetZoom
GitHub
GitHub - fullstackproltd/AspNetCoreSpa: Asp.Net 7.0 & Angular 15 SPA Fullstack application with plenty of examples. Live demo:
Asp.Net 7.0 & Angular 15 SPA Fullstack application with plenty of examples. Live demo: - GitHub - fullstackproltd/AspNetCoreSpa: Asp.Net 7.0 & Angular 15 SPA Fullstack application ...
Podcast - Episode2
Codehaks
پادکست کدهک - قسمت دوم
در این شماره می شنوید :
1- رکورد بازی سوپر ماریو
2- محیط کاری گیتهاب
3- برنامه نویسی چند زبانه
4- پیشنهاد سه زبان برای یادگرفتن در 2020
در این شماره می شنوید :
1- رکورد بازی سوپر ماریو
2- محیط کاری گیتهاب
3- برنامه نویسی چند زبانه
4- پیشنهاد سه زبان برای یادگرفتن در 2020
Forwarded from Breakpoint
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Moien Tajik 💭
خلاصه ای از Garbage Collector در #C - قسمت سوم: تاریخچه ای از GC و معرفی GC Flavor ها ⚙️ :
• Server GC
• Concurrent Workstation GC
• Non-Concurrent Workstation GC
[ Moien.dev ] : https://moien.dev/posts/2020-01-10-gc-part-3/
[ .NET Tips ] : https://www.dotnettips.info/post/3165
• Server GC
• Concurrent Workstation GC
• Non-Concurrent Workstation GC
[ Moien.dev ] : https://moien.dev/posts/2020-01-10-gc-part-3/
[ .NET Tips ] : https://www.dotnettips.info/post/3165
Moien Tajik
C# Garbage Collector - Part 3 - Moien Tajik
In this series of articles, we aim to dive into Memory Management in C#, acquaint ourselves with the Garbage Collector, and gain an overall understanding of how it operates.
⚫️ با نهایت تاسف، Scott Allen یکی از مدرسین عالی Pluralsight مرحوم شدند
ایشون یکی از مدرسین پیش کسوت NET. بودن
با آموزش هاشون حق گردن خیلی از ماها داشتن، همچنین مطالب خوبی در وبسایتشون https://odetocode.com/ به اشتراک میگذاشتن
خدا رحمتشون کنه
__________________
@DotNetZoom
ایشون یکی از مدرسین پیش کسوت NET. بودن
با آموزش هاشون حق گردن خیلی از ماها داشتن، همچنین مطالب خوبی در وبسایتشون https://odetocode.com/ به اشتراک میگذاشتن
خدا رحمتشون کنه
__________________
@DotNetZoom
This media is not supported in your browser
VIEW IN TELEGRAM
❇️ معرفی کد آنالیزر Serilog
همانطور که میدانید Serilog قوی ترین و محبوب ترین کتابخانه Logging در دات نت است. اگر از آن استفاده می کنید پیشنهاد میکنم افزونه و کتابخونه زیر رو هم نصب کنین
ابزار Serilog Analyzer یک آنالیزر roslyn-based برای Serilog بوده و خطا های رایج و اشتباهات متداول به هنگام استفاده از Serilog را گوشزد کرده و اصلاح میکند.
🔰جهت استفاده، افزونه Visual Studio و کتابخانه زیر را نصب کنید
https://marketplace.visualstudio.com/items?itemName=Suchiman.SerilogAnalyzer
https://www.nuget.org/packages/SerilogAnalyzer
ریپازیتوری گیتهاب :
https://github.com/Suchiman/SerilogAnalyzer
___________________
@DotNetZoom
همانطور که میدانید Serilog قوی ترین و محبوب ترین کتابخانه Logging در دات نت است. اگر از آن استفاده می کنید پیشنهاد میکنم افزونه و کتابخونه زیر رو هم نصب کنین
ابزار Serilog Analyzer یک آنالیزر roslyn-based برای Serilog بوده و خطا های رایج و اشتباهات متداول به هنگام استفاده از Serilog را گوشزد کرده و اصلاح میکند.
🔰جهت استفاده، افزونه Visual Studio و کتابخانه زیر را نصب کنید
https://marketplace.visualstudio.com/items?itemName=Suchiman.SerilogAnalyzer
https://www.nuget.org/packages/SerilogAnalyzer
ریپازیتوری گیتهاب :
https://github.com/Suchiman/SerilogAnalyzer
___________________
@DotNetZoom
❇️ پروژه ASP.NET Core رزرو بلیط هواپیما مبتی بر DDD و CQRS و Event Sourcing
🔰تکنولوژی های استفاده شده :
✔️ASP .NET Core 2.2
✔️EF Core 2.2
✔️#RESTful API
✔️#Hypermedia API
✔️#DDD
✔️#CQRS
✔️#Event_Sourcing
✔️#MongoDb
✔️#ElasticSearch
✔️#Docker
✔️#Kubernetes
✔️#TDD
https://github.com/twzhangyang/RestAirline
_________________
@DotNetZoom
🔰تکنولوژی های استفاده شده :
✔️ASP .NET Core 2.2
✔️EF Core 2.2
✔️#RESTful API
✔️#Hypermedia API
✔️#DDD
✔️#CQRS
✔️#Event_Sourcing
✔️#MongoDb
✔️#ElasticSearch
✔️#Docker
✔️#Kubernetes
✔️#TDD
https://github.com/twzhangyang/RestAirline
_________________
@DotNetZoom
GitHub
GitHub - twzhangyang/RestAirline: DDD+CQRS+EventSourcing+Hypermedia API+ASP.NET Core 3.1+Masstransit+terraform+docker+k8s
DDD+CQRS+EventSourcing+Hypermedia API+ASP.NET Core 3.1+Masstransit+terraform+docker+k8s - twzhangyang/RestAirline
❇️ ویدئو های رویداد NET Conf. با موضوع Focus on Blazor
دو روز پیش رویداد یک روزه دات نت کانف با محوریت تمرکز بر روی Blazor برگزار شد.
ویدئو های این رویداد که در youtube و channel9 به همراه زیر نویس انگلیسی (گزینه Caption پایین سمت راست) جمع آوری شده و میتونین استفاده کنین
🔸لینک ویدئو ها در channel9
https://channel9.msdn.com/Events/dotnetConf/Focus-on-Blazor
🔹لینک ویدئو ها در youtube
https://www.youtube.com/playlist?list=PLdo4fOcmZ0oWlP1Qpzg7Dwzxr298ewdUQ
___________________
@DotNetZoom
دو روز پیش رویداد یک روزه دات نت کانف با محوریت تمرکز بر روی Blazor برگزار شد.
ویدئو های این رویداد که در youtube و channel9 به همراه زیر نویس انگلیسی (گزینه Caption پایین سمت راست) جمع آوری شده و میتونین استفاده کنین
🔸لینک ویدئو ها در channel9
https://channel9.msdn.com/Events/dotnetConf/Focus-on-Blazor
🔹لینک ویدئو ها در youtube
https://www.youtube.com/playlist?list=PLdo4fOcmZ0oWlP1Qpzg7Dwzxr298ewdUQ
___________________
@DotNetZoom
❇️ مهم ترین اخبار رویداد NET Conf. با موضوع Focus on Blazor
دو روز پیش رویداد یک روزه دات نت کانف با محوریت تمرکز بر روی Blazor برگزار شد و اخبار و آموزش های جدید در اون منتشر شد از جمله :
🔶 معرفی امکانات جدید
امکانات جدیدی که قرار است تا ماه May به Blazor WebAssembly (همان Client-Side Blazor سابق) اضافه شود
https://gunnarpeipman.com/focus-on-blazor-announcements/
🔷 معرفی نمونه پروژه ای از ترکیب Blazor + Electron
که امکان ساخت برنامه های مدرن و سریع Desktop ایی به صورت Cross-Platform توسط Blazor و تکنولوژی های Web ایی را فراهم می سازد (توضیحات بیشتر)
ریپازیتوری گیتهاب :
https://aka.ms/blazorelectron
🔶معرفی نمونه پروژه ای از ترکیب Blazor + WebWindow
که امکان ساخت برنامه های مانند پروژه قبلی را فراهم می سازد با این تفاوت که سبک تر است و حجم کمتری دارد. WebWindow یک پروژه (در حال حاضرآزمایشی) است که توسط Steve Sanderson خالق Blazor ساخته شده و جایگزین الکترون برای برنامههای NET Core. خواهد شد و نسبت به الکترون سبک تر و کم حجم تر است.
https://aka.ms/webwindow
🔷معرفی پروژه Mobile Blazor Bindings
که امکان ساخت برنامه های Native موبایل را توسط Razor و #C و CSS فراهم می سازد. همچنین به کامپوننت های بومی موبایل مانند GPS و Media دسترسی دارد. در این روش از کامپوننت های مبنی بر Xamarin Forms استفاده می شود
اطلاعات بیشتر و نمونه اپ های ساخته شده
https://devblogs.microsoft.com/aspnet/mobile-blazor-bindings-experiment/
https://docs.microsoft.com/en-us/mobile-blazor-bindings/
https://github.com/xamarin/MobileBlazorBindings
🔶امکان تست نویسی برای Blazor
قابلیت Unit Test نویسی برای کامپوننت های Blazor هم اکنون در حد نمونه اولیه پیاده سازی شده است و به زودی تکمیل می شود
اطلاعات بیشتر و ریپازیتوری کتابخانه مربوطه
https://blog.stevensanderson.com/2019/08/29/blazor-unit-testing-prototype/
https://github.com/egil/razor-components-testing-library
🔷کاهش حجم برنام های Blazor WebAssembly
توسط قابلیت Assembly trimming می توان حجم خروجی برنامه های Blazor WebAssembly را کاهش داد. به طور مثال حجم نسخه پیشفرض فعلی یک اپ Blazor WebAassembly حدود 2 مگابایت است که تیم Blazor وعده داده در انتشار ماه May سال جاری، حجم آن را تا 1.5 مگابایت کاهش دهد.
_______________
@DotNetZoom
دو روز پیش رویداد یک روزه دات نت کانف با محوریت تمرکز بر روی Blazor برگزار شد و اخبار و آموزش های جدید در اون منتشر شد از جمله :
🔶 معرفی امکانات جدید
امکانات جدیدی که قرار است تا ماه May به Blazor WebAssembly (همان Client-Side Blazor سابق) اضافه شود
https://gunnarpeipman.com/focus-on-blazor-announcements/
🔷 معرفی نمونه پروژه ای از ترکیب Blazor + Electron
که امکان ساخت برنامه های مدرن و سریع Desktop ایی به صورت Cross-Platform توسط Blazor و تکنولوژی های Web ایی را فراهم می سازد (توضیحات بیشتر)
ریپازیتوری گیتهاب :
https://aka.ms/blazorelectron
🔶معرفی نمونه پروژه ای از ترکیب Blazor + WebWindow
که امکان ساخت برنامه های مانند پروژه قبلی را فراهم می سازد با این تفاوت که سبک تر است و حجم کمتری دارد. WebWindow یک پروژه (در حال حاضرآزمایشی) است که توسط Steve Sanderson خالق Blazor ساخته شده و جایگزین الکترون برای برنامههای NET Core. خواهد شد و نسبت به الکترون سبک تر و کم حجم تر است.
https://aka.ms/webwindow
🔷معرفی پروژه Mobile Blazor Bindings
که امکان ساخت برنامه های Native موبایل را توسط Razor و #C و CSS فراهم می سازد. همچنین به کامپوننت های بومی موبایل مانند GPS و Media دسترسی دارد. در این روش از کامپوننت های مبنی بر Xamarin Forms استفاده می شود
اطلاعات بیشتر و نمونه اپ های ساخته شده
https://devblogs.microsoft.com/aspnet/mobile-blazor-bindings-experiment/
https://docs.microsoft.com/en-us/mobile-blazor-bindings/
https://github.com/xamarin/MobileBlazorBindings
🔶امکان تست نویسی برای Blazor
قابلیت Unit Test نویسی برای کامپوننت های Blazor هم اکنون در حد نمونه اولیه پیاده سازی شده است و به زودی تکمیل می شود
اطلاعات بیشتر و ریپازیتوری کتابخانه مربوطه
https://blog.stevensanderson.com/2019/08/29/blazor-unit-testing-prototype/
https://github.com/egil/razor-components-testing-library
🔷کاهش حجم برنام های Blazor WebAssembly
توسط قابلیت Assembly trimming می توان حجم خروجی برنامه های Blazor WebAssembly را کاهش داد. به طور مثال حجم نسخه پیشفرض فعلی یک اپ Blazor WebAassembly حدود 2 مگابایت است که تیم Blazor وعده داده در انتشار ماه May سال جاری، حجم آن را تا 1.5 مگابایت کاهش دهد.
_______________
@DotNetZoom
Gunnar Peipman - Programming Blog
Announcements from .NET Conf: Focus on Blazor
Most important announcements from .NET Conf: Focus on Blazor online conference. Blazor roadmap for May, 2020. New experimental projects announced.
❇️ ساخت برنامه های gRPC بدون فایل های proto. در ASP.NET Core
🔰برای ساخت برنامه های gRPC در دات نت، 2 پیاده سازی متفاوت (یکی رسمی و دیگری غیر رسمی) وجود دارد
1️⃣ پیاده سازی grpc-dotnet (یا gRPC for .NET) که کتابخانه رسمی gRPC برای دات نت است
https://github.com/grpc/grpc-dotnet
2️⃣ پیاده سازی protobuf-net.Grpc که کتابخانه غیر رسمی و از توسط Marc Gravell (یکی از برنامه نویسان بزرگ سایت Stackoverflow، و نویسنده کتابخانه های محبوب Dapper و StackExchange.Redis) تهیه شده است
https://github.com/protobuf-net/protobuf-net.Grpc
🔸یکی از تفاوت های این دو کتابخانه این است که در حالت عادی (توسط grpc-dotnet) ساخت فایل های .proto جهت تعریف ساختار API الزامی است ولی توسط کتابخانه protobuf-net.Grpc نیازی به فایل های اضافی .proto نبوده و ساختار متد های سرویس دهنده توسط Interface ها مشخص می شوند.
🔹تفاوت دیگر آن این است که کتابخانه protobuf-net.Grpc تارگت های NETFramework 4.6.1. و NETStandard 2.0. و NETStandard 2.1. را پشتیبانی میکند در حالی که کتابخانه grpc-dotnet فقط NETStandard 2.1. را پشتیبانی میکند در نتیجه بر روی .NET Framework و .NET Core نسخه های قبل از 3.0 قابل اجرا نیست
- البته یک پیاده سازی رسمی دیگر (به نام gRPC for C#) نیز وجود دارد که از نسخه های قدیمی تر مانند NETFramework 4.5. و NETStandard 1.5. و NETStandard 2.0. هم پشتیبانی میکند
https://github.com/grpc/grpc/tree/master/src/csharp
🔸نکته بعدی، تفاوت در سرعت این دو کتابخانه است به صورتی که طبق بنچمارک زیر protobuf-net.Grp کمی کند تر از grpc-dotnet است
https://pawelkmiec.net/2019/11/17/gRPC-performance-benchmark.html
🔹تفاوت بعد آن این است که API های کتابخانه رسمی grpc-dotnet و #gRPC for C شبیه پیاده سازی اصلی grpc گوگل بوده در حالی که کتابخانه protobuf- net.Grpc بیشتر متمایل به Contract های سی شارپی بوده و کار با آن برای برنامه نویسان سی شارپ ساده تر و باب میل تر است
🔰 مشابه قضیه بالا، برای استفاده از protobuf در دات نت نیز 2 کتابخانه وجود دارد
1️⃣ کتابخانه Google.Protobuf : که پیاده سازی و استفاده از آن شبیه نسخه اصلی protobuf است. (ریپازیتوری گیتهاب)
2️⃣ کتابخانه protobuf-net : که پیاده سازی و استفاده از آن شبیه بقیه سریالایزرهای دات نتی بوده و بیشتر متمایل به سی شارپ است. (ریپازیتوری گیتهاب)
کتابخانه دومی بیشتر باب میل سی شارپیها بوده و نیز ساده تر است. با دیدن مثال هر دو کتابخانه میتوانید بهتر متوجه این تفاوت شوید.
لینک زیر هم به مقایسه این دو کتابخانه پرداخته :
How to choose between protobuf-csharp-port and protobuf-net
✅ آموزش استفاده از protobuf-net.Grpc
✔️Getting Started with protobuf-net.Grpc
✔️Mark Gravell Talking Between Services with gRPC and Other Tricks
✅ آموزش استفاده از grpc-dotnet و #gRPC for C
✔️Introduction to gRPC on .NET Core
✔️gRPC services with C#
✔️gRPC services with ASP.NET Core
✔️Call gRPC services with the .NET client
✔️Create a gRPC client and server in ASP.NET Core
✔️Trying out gRPC in ASP.NET Core 3
__________________
@DotNetZoom
🔰برای ساخت برنامه های gRPC در دات نت، 2 پیاده سازی متفاوت (یکی رسمی و دیگری غیر رسمی) وجود دارد
1️⃣ پیاده سازی grpc-dotnet (یا gRPC for .NET) که کتابخانه رسمی gRPC برای دات نت است
https://github.com/grpc/grpc-dotnet
2️⃣ پیاده سازی protobuf-net.Grpc که کتابخانه غیر رسمی و از توسط Marc Gravell (یکی از برنامه نویسان بزرگ سایت Stackoverflow، و نویسنده کتابخانه های محبوب Dapper و StackExchange.Redis) تهیه شده است
https://github.com/protobuf-net/protobuf-net.Grpc
🔸یکی از تفاوت های این دو کتابخانه این است که در حالت عادی (توسط grpc-dotnet) ساخت فایل های .proto جهت تعریف ساختار API الزامی است ولی توسط کتابخانه protobuf-net.Grpc نیازی به فایل های اضافی .proto نبوده و ساختار متد های سرویس دهنده توسط Interface ها مشخص می شوند.
🔹تفاوت دیگر آن این است که کتابخانه protobuf-net.Grpc تارگت های NETFramework 4.6.1. و NETStandard 2.0. و NETStandard 2.1. را پشتیبانی میکند در حالی که کتابخانه grpc-dotnet فقط NETStandard 2.1. را پشتیبانی میکند در نتیجه بر روی .NET Framework و .NET Core نسخه های قبل از 3.0 قابل اجرا نیست
- البته یک پیاده سازی رسمی دیگر (به نام gRPC for C#) نیز وجود دارد که از نسخه های قدیمی تر مانند NETFramework 4.5. و NETStandard 1.5. و NETStandard 2.0. هم پشتیبانی میکند
https://github.com/grpc/grpc/tree/master/src/csharp
🔸نکته بعدی، تفاوت در سرعت این دو کتابخانه است به صورتی که طبق بنچمارک زیر protobuf-net.Grp کمی کند تر از grpc-dotnet است
https://pawelkmiec.net/2019/11/17/gRPC-performance-benchmark.html
🔹تفاوت بعد آن این است که API های کتابخانه رسمی grpc-dotnet و #gRPC for C شبیه پیاده سازی اصلی grpc گوگل بوده در حالی که کتابخانه protobuf- net.Grpc بیشتر متمایل به Contract های سی شارپی بوده و کار با آن برای برنامه نویسان سی شارپ ساده تر و باب میل تر است
🔰 مشابه قضیه بالا، برای استفاده از protobuf در دات نت نیز 2 کتابخانه وجود دارد
1️⃣ کتابخانه Google.Protobuf : که پیاده سازی و استفاده از آن شبیه نسخه اصلی protobuf است. (ریپازیتوری گیتهاب)
2️⃣ کتابخانه protobuf-net : که پیاده سازی و استفاده از آن شبیه بقیه سریالایزرهای دات نتی بوده و بیشتر متمایل به سی شارپ است. (ریپازیتوری گیتهاب)
کتابخانه دومی بیشتر باب میل سی شارپیها بوده و نیز ساده تر است. با دیدن مثال هر دو کتابخانه میتوانید بهتر متوجه این تفاوت شوید.
لینک زیر هم به مقایسه این دو کتابخانه پرداخته :
How to choose between protobuf-csharp-port and protobuf-net
✅ آموزش استفاده از protobuf-net.Grpc
✔️Getting Started with protobuf-net.Grpc
✔️Mark Gravell Talking Between Services with gRPC and Other Tricks
✅ آموزش استفاده از grpc-dotnet و #gRPC for C
✔️Introduction to gRPC on .NET Core
✔️gRPC services with C#
✔️gRPC services with ASP.NET Core
✔️Call gRPC services with the .NET client
✔️Create a gRPC client and server in ASP.NET Core
✔️Trying out gRPC in ASP.NET Core 3
__________________
@DotNetZoom
GitHub
GitHub - grpc/grpc-dotnet: gRPC for .NET
gRPC for .NET. Contribute to grpc/grpc-dotnet development by creating an account on GitHub.
❇️ مهمترین اخبار اخیر
✅ آپدیت ژانویه 2020 برای NET Core. منتشر شد
🔸بروز رسانی نسخه ها 2.1.15 و 3.0.2 و 3.1.1 به جهت رفع چند باگ امنیتی در مورد (Remote Code Execution و Denial of Service (حمله Dos)) منتشر شدند
🔹اگر از وِیژوال استادیو استفاده می کنید برای استفاده از آخرین بروزرسانیNET Core SDK. ورژن 3.1.x به نسخه Visual Studio 2019 نسخه 16.4.x به بالا نیاز خواهید داشت
دانلود NET Core SDK. نسخه 3.1.1
https://dotnet.microsoft.com/download/dotnet-core/3.1
توضیحات بیشتر
https://devblogs.microsoft.com/dotnet/net-core-january-2020/
✅ پایان پشتیبانی از Windows 7 و. Windows Server 2008 و Windows Server 2008 R2
از این پس ویندوز های قبلی همچنان قابل استفاده خواهند بود ولی دیگر بروز رسانی های امنیتی را دریافت نخواهند کرد و در برابر آسیب پذیری های جدید ایمن نخواهند بود
✅ نسخه نهایی مرورگر Edge مبتنی بر Chromium منتشر شد
ماکروسافت نسخه پایدار Edge جدید را برای سیستم عامل های Windows و Mac منتشر کرد. کاربران به زودی یک آپدیت برای Windwos 10 دریافت خواهند کرد که مرورگر Edge با آن نصب خواهد شد. ماکروسافت مدعی شده این مرورگر از Chrome سبک تر بوده و Memory کمتری مصرف میکند.
لینک دانلود
https://www.microsoft.com/en-us/edge
من که نصب کردم پیشنهاد میکنم شما هم امتحان کنین و نظرتونو بگین 😉✌️
_______________
@DotNetZoom
✅ آپدیت ژانویه 2020 برای NET Core. منتشر شد
🔸بروز رسانی نسخه ها 2.1.15 و 3.0.2 و 3.1.1 به جهت رفع چند باگ امنیتی در مورد (Remote Code Execution و Denial of Service (حمله Dos)) منتشر شدند
🔹اگر از وِیژوال استادیو استفاده می کنید برای استفاده از آخرین بروزرسانیNET Core SDK. ورژن 3.1.x به نسخه Visual Studio 2019 نسخه 16.4.x به بالا نیاز خواهید داشت
دانلود NET Core SDK. نسخه 3.1.1
https://dotnet.microsoft.com/download/dotnet-core/3.1
توضیحات بیشتر
https://devblogs.microsoft.com/dotnet/net-core-january-2020/
✅ پایان پشتیبانی از Windows 7 و. Windows Server 2008 و Windows Server 2008 R2
از این پس ویندوز های قبلی همچنان قابل استفاده خواهند بود ولی دیگر بروز رسانی های امنیتی را دریافت نخواهند کرد و در برابر آسیب پذیری های جدید ایمن نخواهند بود
✅ نسخه نهایی مرورگر Edge مبتنی بر Chromium منتشر شد
ماکروسافت نسخه پایدار Edge جدید را برای سیستم عامل های Windows و Mac منتشر کرد. کاربران به زودی یک آپدیت برای Windwos 10 دریافت خواهند کرد که مرورگر Edge با آن نصب خواهد شد. ماکروسافت مدعی شده این مرورگر از Chrome سبک تر بوده و Memory کمتری مصرف میکند.
لینک دانلود
https://www.microsoft.com/en-us/edge
من که نصب کردم پیشنهاد میکنم شما هم امتحان کنین و نظرتونو بگین 😉✌️
_______________
@DotNetZoom
Forwarded from Software Philosophy
This media is not supported in your browser
VIEW IN TELEGRAM
چگونه یک نیروی جدید به تیم اضافه کنیم.
ویدئویی که میبینید یه ایستگاه قطاره که توش یه پیانو گذاشتن که هر کسی خواست بشینه و بزنه.
یه آقایی نشسته و داره پیانو میزنه که یه نفر دیگه هم بهش اضافه میشه و کمکش میکنه و هماهنگیشون فوقالعاده میشه.
به نظرم نحوه کمک کردن نفر جدید، طوری که با هم هماهنگ میشن، روشی که با هم تعامل میکنن، همه و همه الگو هستن.
یه الگوی عالی برای نحوهای که باید تیمهای نرمافزاری گسترش پیدا کنن.
با اینکه مشخصه که یکی داره به اون یکی کمک میکنه، ولی هیچ دلیل یا حسی وجود نداره که اونی که داره بهش کمک میشه نبوغش کمتره، و شاید حتی بیشترم هست.
اثری که خلق شده کاملا تاثیر هماهنگی هر دو اونهاست، فارغ از اینکه کی با چه موقعیتی داره چیکار میکنه. اونها خودشون نیستن که حرف میزنن، اثرشون و نتیجه کارشونه که حرف میزنه.
به نظرم این مدل برای تیمهای نرمافزاری و تیمهای استارتاپی که در حال scale کردن هستن، کاملا الگوی مناسبیه.
⁉️ برای بحث و تبادل نظر فنی در مورد این پست، برروی دکمه «نظرت را بگو» کلیک کنید.
#مهران_داودی (http://ow.ly/GwIl309lFEm)
کانال تلگرام:
@SoftwarePhilosophy
___
ویدئویی که میبینید یه ایستگاه قطاره که توش یه پیانو گذاشتن که هر کسی خواست بشینه و بزنه.
یه آقایی نشسته و داره پیانو میزنه که یه نفر دیگه هم بهش اضافه میشه و کمکش میکنه و هماهنگیشون فوقالعاده میشه.
به نظرم نحوه کمک کردن نفر جدید، طوری که با هم هماهنگ میشن، روشی که با هم تعامل میکنن، همه و همه الگو هستن.
یه الگوی عالی برای نحوهای که باید تیمهای نرمافزاری گسترش پیدا کنن.
با اینکه مشخصه که یکی داره به اون یکی کمک میکنه، ولی هیچ دلیل یا حسی وجود نداره که اونی که داره بهش کمک میشه نبوغش کمتره، و شاید حتی بیشترم هست.
اثری که خلق شده کاملا تاثیر هماهنگی هر دو اونهاست، فارغ از اینکه کی با چه موقعیتی داره چیکار میکنه. اونها خودشون نیستن که حرف میزنن، اثرشون و نتیجه کارشونه که حرف میزنه.
به نظرم این مدل برای تیمهای نرمافزاری و تیمهای استارتاپی که در حال scale کردن هستن، کاملا الگوی مناسبیه.
⁉️ برای بحث و تبادل نظر فنی در مورد این پست، برروی دکمه «نظرت را بگو» کلیک کنید.
#مهران_داودی (http://ow.ly/GwIl309lFEm)
کانال تلگرام:
@SoftwarePhilosophy
___
❇️ اگه هنوز براتون سواله که MongoDb یا مثلا SqlServer ❓❗️
اگه نمیدونین تئوری CAP چیه اول اینجا رو مطالعه کنین
وقتی از نگاه تئوری CAP دیتابیس mongo رو بررسی کنیم
مونگو تو شرایط مختلف trade-off متفاوتی از C و A و P رو فراهم میکنه
🔶 از نگاه Consistency :
مثلا وقتی به صورت Distribute ازش استفاده نشه Strong Consistent هست پس Consistency رو داره
ولی وقتی به صورت Distribute ازش استفاده بشه (مثلا دیتا از replica ها خونده بشه) Eventual Consistent هست پس Consistency رو فدا میکنه
🔷 از نگاه Availability:
وقتی از مونگو به صورت توزیع شده (Replica-Sets) استفاده بشه، high availability خوبی رو فراهم و در صورت دان شدن Primary Node سریعا یک node دیگه جایگزین میشه ولی در این حالت Consistency فدای Availability میشه
🔶 از نگاه Partition Tolerance:
توسط قابلیت Replica-Sets عملا Partition Tolerance فراهم است منتها تا زمانی که "بیش از نیمی" از Node ها به یک دیگر متصل باشند. در این حالت سیستم Primary Node جدید رو انتخاب میکنه
ولی اگر Node های ثانویه به اندازه کافی نباشند همچنان امکان read وجود داره ولی دیگه امکان write وجود نداره. پس دراین حالت Availability برای Consistency فدا میشه
🔰 نتیجه گیری :
✔️ اگر توزیع نشده استفاده بشه : CA
✔️ اگر توزیع شده باشه ولی اکثریت node ها در دسترس باشند : AP
✔️ اگر توزیع شده باشه ولی کمتر از نصف node ها در دسترس باشند : CP
✅ در نهایت ویژگی های خوبی که باعث میشه Mongo انتخاب بهتری نسبت به دیتابیس SQL/Relational باشه ایناس :
1️⃣ شما نیاز به مقیاس پذیری بالا به صورت Horizontal Scaling دارید (توسط قابلیت Replica-Set و Sharding مونگو)
در این حالت معمولا Consistency فدا میشه پس باید دقت داشت که این روش برای دیتا های حساس که به یکپارچگی و ثبات بالا نیاز دارند مناسب نیست، مثل برنامه های حسابداری و بانکی
2️⃣ دیتای شما ساختار (Schema) مشخصی نداره و به انعطاف پذیری بالا نیاز دارید (به خاطر Schema-less بودن مونگو)
در این حالت باید توجه داشت که متفاوت بودن ساختار رکورد (داکیومنت) ها میتونه احتمال خطا توی سیستم رو افزایش بده پس باید در سطح کد نویسی حواسمون بهش باشه
3️⃣ دیتابیس Mongo برای ذخیره سازی و بازیابی دیتا های حجیم و "مرتبط" بسیار مناسبه و پرفرمنس بالایی داره، چون تمام دیتای مرتبط به یک سند داخل خودش ذخیره میشه و نیاز به Join خیلی کمتر احساس میشه
4️⃣ دیتابیس Mongo به خاطر ساختار و سادگی ایی که داره Performance Tuning و Optimization های حرفه ای که نیاز به DBA داشته باشه خیلی کمتر توش احساس میشه پس اگه میخواین خیلی درگیر کار های DBA ایی نشین Mongo گزینه مناسبیه
___________________
@DotNetZoom
اگه نمیدونین تئوری CAP چیه اول اینجا رو مطالعه کنین
وقتی از نگاه تئوری CAP دیتابیس mongo رو بررسی کنیم
مونگو تو شرایط مختلف trade-off متفاوتی از C و A و P رو فراهم میکنه
🔶 از نگاه Consistency :
مثلا وقتی به صورت Distribute ازش استفاده نشه Strong Consistent هست پس Consistency رو داره
ولی وقتی به صورت Distribute ازش استفاده بشه (مثلا دیتا از replica ها خونده بشه) Eventual Consistent هست پس Consistency رو فدا میکنه
🔷 از نگاه Availability:
وقتی از مونگو به صورت توزیع شده (Replica-Sets) استفاده بشه، high availability خوبی رو فراهم و در صورت دان شدن Primary Node سریعا یک node دیگه جایگزین میشه ولی در این حالت Consistency فدای Availability میشه
🔶 از نگاه Partition Tolerance:
توسط قابلیت Replica-Sets عملا Partition Tolerance فراهم است منتها تا زمانی که "بیش از نیمی" از Node ها به یک دیگر متصل باشند. در این حالت سیستم Primary Node جدید رو انتخاب میکنه
ولی اگر Node های ثانویه به اندازه کافی نباشند همچنان امکان read وجود داره ولی دیگه امکان write وجود نداره. پس دراین حالت Availability برای Consistency فدا میشه
🔰 نتیجه گیری :
✔️ اگر توزیع نشده استفاده بشه : CA
✔️ اگر توزیع شده باشه ولی اکثریت node ها در دسترس باشند : AP
✔️ اگر توزیع شده باشه ولی کمتر از نصف node ها در دسترس باشند : CP
✅ در نهایت ویژگی های خوبی که باعث میشه Mongo انتخاب بهتری نسبت به دیتابیس SQL/Relational باشه ایناس :
1️⃣ شما نیاز به مقیاس پذیری بالا به صورت Horizontal Scaling دارید (توسط قابلیت Replica-Set و Sharding مونگو)
در این حالت معمولا Consistency فدا میشه پس باید دقت داشت که این روش برای دیتا های حساس که به یکپارچگی و ثبات بالا نیاز دارند مناسب نیست، مثل برنامه های حسابداری و بانکی
2️⃣ دیتای شما ساختار (Schema) مشخصی نداره و به انعطاف پذیری بالا نیاز دارید (به خاطر Schema-less بودن مونگو)
در این حالت باید توجه داشت که متفاوت بودن ساختار رکورد (داکیومنت) ها میتونه احتمال خطا توی سیستم رو افزایش بده پس باید در سطح کد نویسی حواسمون بهش باشه
3️⃣ دیتابیس Mongo برای ذخیره سازی و بازیابی دیتا های حجیم و "مرتبط" بسیار مناسبه و پرفرمنس بالایی داره، چون تمام دیتای مرتبط به یک سند داخل خودش ذخیره میشه و نیاز به Join خیلی کمتر احساس میشه
4️⃣ دیتابیس Mongo به خاطر ساختار و سادگی ایی که داره Performance Tuning و Optimization های حرفه ای که نیاز به DBA داشته باشه خیلی کمتر توش احساس میشه پس اگه میخواین خیلی درگیر کار های DBA ایی نشین Mongo گزینه مناسبیه
___________________
@DotNetZoom
❇️ ساخت دیتابیس یکبار مصرف Mongo بدون نیاز به نصب آن!
کتابخانه Mongo2Go یه کتابخونه عالی برای Integration Testing پروژه هایی هست که از MongoDb استفاده میکنند
🔶 توسط این کتابخونه می تونین دیتابیس های MongoDb رو بدون نیاز به نصب اون به صورت یکبار مصرف ایجاد کنین، یعنی یه دیتابیس موقت (توی پوشه Temp سیستم عامل) براتون میسازه و در آخر وقتی کارتون باهاش تموم شد اون رو حذف میکنه. در نتیجه برای Integration Testing بسیار مناسب و کاربردی هست.
🔷 قاعدتا برای استفاده از مونگو باید ورژن متناسب با سیستم عاملتون رو نصب و کانفیگ کنین یا راحت تر اینکه اون رو توسط Docker راه اندازی کنین ولی توسط این کتابخونه دیگه نیازی به نصب اون ندارین چون فایل های باینری MonogDb رو داخل خودش داره (واسه همین یه مقدار حجمش زیاده، 69 مگابایت)
🔰طرز کار باهاش خیلی سادس فقط کافیه ناگتش رو نصب کنین
https://github.com/Mongo2Go/Mongo2Go
_________________
@DotNetZoom
کتابخانه Mongo2Go یه کتابخونه عالی برای Integration Testing پروژه هایی هست که از MongoDb استفاده میکنند
🔶 توسط این کتابخونه می تونین دیتابیس های MongoDb رو بدون نیاز به نصب اون به صورت یکبار مصرف ایجاد کنین، یعنی یه دیتابیس موقت (توی پوشه Temp سیستم عامل) براتون میسازه و در آخر وقتی کارتون باهاش تموم شد اون رو حذف میکنه. در نتیجه برای Integration Testing بسیار مناسب و کاربردی هست.
🔷 قاعدتا برای استفاده از مونگو باید ورژن متناسب با سیستم عاملتون رو نصب و کانفیگ کنین یا راحت تر اینکه اون رو توسط Docker راه اندازی کنین ولی توسط این کتابخونه دیگه نیازی به نصب اون ندارین چون فایل های باینری MonogDb رو داخل خودش داره (واسه همین یه مقدار حجمش زیاده، 69 مگابایت)
🔰طرز کار باهاش خیلی سادس فقط کافیه ناگتش رو نصب کنین
Install-Package Mongo2Go
و به صورت زیر ازش استفاده کنینusing (var runner = MongoDbRunner.Start())ریپازیتوری گیتهاب :
{
var client = new MongoClient(runner.ConnectionString);
var database = client.GetDatabase("IntegrationTest");
var collection = database.GetCollection<TestDocument>("TestCollection");
//Just use it!
}
https://github.com/Mongo2Go/Mongo2Go
_________________
@DotNetZoom
GitHub
GitHub - Mongo2Go/Mongo2Go: Mongo2Go - MongoDB for .NET integration tests
Mongo2Go - MongoDB for .NET integration tests. Contribute to Mongo2Go/Mongo2Go development by creating an account on GitHub.
❇️ پروژه API نویسی پیشرفته در ASP.NET Core به ورژن 3.1.2 (آخرین نسخه جاری) بروز رسانی شد✌️
🔸مخزن گیتهاب پروژه
https://github.com/dotnetzoom/AspNetCore-WebApi-Course
🔹نسخه قبلی به برنچ AspNetCore2.1 منتقل شد
https://github.com/dotnetzoom/AspNetCore-WebApi-Course/tree/AspNetCore2.1
🔸مشاهده مهم ترین تغییرات این بروز رسانی
https://github.com/dotnetzoom/AspNetCore-WebApi-Course/blob/master/CHANGELOG.md
🔰جهت تهیه آموزش ویدئویی کامل این دوره میتونین از لینک زیر و کد تخفیف dotnetzoom استفاده کنید
http://bit.ly/2Xo6NX2
____________________
@DotNetZoom
🔸مخزن گیتهاب پروژه
https://github.com/dotnetzoom/AspNetCore-WebApi-Course
🔹نسخه قبلی به برنچ AspNetCore2.1 منتقل شد
https://github.com/dotnetzoom/AspNetCore-WebApi-Course/tree/AspNetCore2.1
🔸مشاهده مهم ترین تغییرات این بروز رسانی
https://github.com/dotnetzoom/AspNetCore-WebApi-Course/blob/master/CHANGELOG.md
🔰جهت تهیه آموزش ویدئویی کامل این دوره میتونین از لینک زیر و کد تخفیف dotnetzoom استفاده کنید
http://bit.ly/2Xo6NX2
____________________
@DotNetZoom
Forwarded from 🛑 Iranian🇮🇷Experts 🛑 (𝓓𝓪𝓻𝓲𝓾𝓼𝓱 𝓣𝓪𝓼𝓭𝓲𝓰𝓱𝓲)
Media is too big
VIEW IN TELEGRAM
🔴 𝓘𝓡𝓐𝓝𝓘𝓐𝓝 𝓔𝓧𝓟𝓔𝓡𝓣𝓢 𝓒𝓗𝓐𝓝𝓝𝓔𝓛 🔴
عنوان سخنرانی: آموزش
MOQ
IOC
MS Test
Unit Testing
Test Driven Design
Dependency Injection
سخنرانی: داریوش تصدیقی
انتشار این سند آموزشی بلامانع میباشد!
ادمین کانال اصلی:
@Dariush_Tasdighi
نشانی کانال اصلی:
@IranianExperts
عنوان سخنرانی: آموزش
MOQ
IOC
MS Test
Unit Testing
Test Driven Design
Dependency Injection
سخنرانی: داریوش تصدیقی
انتشار این سند آموزشی بلامانع میباشد!
ادمین کانال اصلی:
@Dariush_Tasdighi
نشانی کانال اصلی:
@IranianExperts
❇️ منتشر شد ASP.NET Core 5.0 preview 1 🎉🎉✌️
https://devblogs.microsoft.com/aspnet/asp-net-core-updates-in-net-5-preview-1/
❇️ منتشر شد Entity Framework Core 5.0 preview 1
https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-1/
❇️ منتشر شد NET 5.0 preview 1.
https://devblogs.microsoft.com/dotnet/announcing-net-5-0-preview-1/
❇️ منتشر شد NET Core 3.1.200 SDK.
https://github.com/dotnet/core/blob/master/release-notes/3.1/3.1.2/3.1.200-sdk.md
🔸امروز برای برنامه نویسای دات نت یه جورایی عید محسوب میشد چرا که تیم دات نت خبرای داغی منتشر کرد.
🔹به شخصه که خیلی خوشحالم از این اتفاق و این قطعا آغازی برای یه حرکت بزرگ و امیدوارانه برای آینده دات نت و ما دات نت کار ها هست.
🔸مهمترین این انتشار ها مربوط به EF Core 5.0 هست چون کلی بهبود و امکان جدید معرفی کرده که انشالا به زودی در موردش پست میذارم
🔹نکته : برای اینکه از این نسخه جدید استفاده توی ویژوال استودیو 2019 استفاده کنین باید آخرین نسخه پیش نمایش v16.6 رو نصب داشته باشین ولی اگه از Rider یا VSCode استفاده میکنین نیازی نیست
________________
@DotNetZoom
https://devblogs.microsoft.com/aspnet/asp-net-core-updates-in-net-5-preview-1/
❇️ منتشر شد Entity Framework Core 5.0 preview 1
https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-1/
❇️ منتشر شد NET 5.0 preview 1.
https://devblogs.microsoft.com/dotnet/announcing-net-5-0-preview-1/
❇️ منتشر شد NET Core 3.1.200 SDK.
https://github.com/dotnet/core/blob/master/release-notes/3.1/3.1.2/3.1.200-sdk.md
🔸امروز برای برنامه نویسای دات نت یه جورایی عید محسوب میشد چرا که تیم دات نت خبرای داغی منتشر کرد.
🔹به شخصه که خیلی خوشحالم از این اتفاق و این قطعا آغازی برای یه حرکت بزرگ و امیدوارانه برای آینده دات نت و ما دات نت کار ها هست.
🔸مهمترین این انتشار ها مربوط به EF Core 5.0 هست چون کلی بهبود و امکان جدید معرفی کرده که انشالا به زودی در موردش پست میذارم
🔹نکته : برای اینکه از این نسخه جدید استفاده توی ویژوال استودیو 2019 استفاده کنین باید آخرین نسخه پیش نمایش v16.6 رو نصب داشته باشین ولی اگه از Rider یا VSCode استفاده میکنین نیازی نیست
________________
@DotNetZoom
Microsoft News
ASP.NET Core updates in .NET 5 Preview 1
ASP.NET Core updates in .NET 5 Preview 1