اشتراک‌ها
دوره پیاده سازی minimal API با دات نت 7

.NET 7 minimal API from scratch | FULL COURSE | clean architecture, repository pattern, CQRS MediatR

In this course I want to provide you a project structure and code organization to get you started with real .NET 7 minimal API projects. It's a full course on this topic where I start from creating and explaining the project structure, setting up different layers using EF Core, repository pattern, CQRS and MediatR. The biggest part of the video is however around the .NET 7 minimal API, taking you from the initial setup, explaining route handlers, implementing all CRUD operations and so on. Last but not least, this course walks you through the process of refactoring the .NET 7 minimal API so that it becomes readable, maintainable and scalable. At the end, you'll have a full project structure organized according to modern architectural patterns that you can take as a template for your own projects.

Contents
1. Intro: 00:00
2. Structuring the solution: 01:00
3. Coding the domain layer: 05:25
4. Coding the data access layer: 08:22
5. Creating repositories: 11:17
6. Adding migrations and database update: 22:30
7. CQRS with MediatR: 29:07
8. Route and rout handlers: 52:06
9. Dependency injection: 55:52
10. Implementing GET by ID : 57:40
11. Implementing POST route: 01:00:26
12. Implementing GET all route: 01:03:41
13. Implement PUT and DELETE: 01:04:57
14. Testing with Postman: 01:09:01
15. Is there a problem? 01:12:41
16. Refactoring service registrations: 01:15:49
17. Refactoring route registrations: 01:20:01
18. Automatic registration of endpoints: 01:26:28
19. Introducing route groups:  01:31:43
20. Extract lambdas into instance methods: 01:34:31
21: Model validation with endpoint filters: 01:45:58
22. Global exception handling: 01:55:10
23. Conclusions: 01:59:49 

دوره پیاده سازی minimal API با دات نت 7
اشتراک‌ها
نگارش نهایی SQL Server 2016 منتشر شد

Today we announced the general availability of SQL Server 2016, the world’s fastest and most price-performant database for HTAP (Hybrid Transactional and Analytical Processing) with updateable, in-memory columnstores and advanced analytics through deep integration with R Services. Software applications can now deploy sophisticated analytics and machine learning models in the database resulting in 100x or more speedup in time to insight, compared to deployments of such models outside of the database. 

نگارش نهایی SQL Server 2016 منتشر شد
اشتراک‌ها
آشنایی با IBM Swift Sandbox

The IBM Swift Sandbox is an interactive website that lets you write Swift code and execute it in a server environment – on top of Linux! Each sandbox runs on IBM Cloud in a Docker container. In addition, both the latest versions of Swift and its standard library are available for you to use. 

آشنایی با IBM Swift Sandbox
اشتراک‌ها
افزونه‌ای برای پیش‌نمایش خروجی مرورگر داخل VSCode به همراه قابلیت دیباگ

Browser Preview for VS Code enables you to open a real browser preview inside your editor that you can debug. Browser Preview is powered by Chrome Headless, and works by starting a headless Chrome instance in a new process. This enables a secure way to render web content inside VS Code, and enables interesting features such as in-editor debugging and more! 

افزونه‌ای برای پیش‌نمایش خروجی مرورگر داخل VSCode به همراه قابلیت دیباگ
اشتراک‌ها
MSDN Magazine نگارش ویژه‌ی Windows 10

MSDN magazine has released a special Windows 10 issue. The issue spans a large number of topics from Visual Studio tooling to game development to user experience to notifications.

MSDN Magazine نگارش ویژه‌ی Windows 10
نظرات مطالب
ایجاد کپچایی (captcha) سریع و ساده در ASP.NET MVC 5

ممنون از شما. فقط یک نکته‌ی کوچک در مورد memory stream هست که بهتره درنظر گرفته بشه. در این شیء متدهای ToArray و GetBuffer یکی نیستند. متد GetBuffer حجمی نزدیک به 2 برابر آرایه اصلی رو عموما داره و انتهاش یک سری بایت‌های اضافی هم شاید باشند. اما ToArray اصل دیتا رو بر می‌گردونه.

Note that the buffer contains allocated bytes which might be unused. For example, if the string "test" is written into the MemoryStream object, the length of the buffer returned from GetBuffer is 256, not 4, with 252 bytes unused. To obtain only the data in the buffer, use the ToArray method; however, ToArray creates a copy of the data in memory.

بازخوردهای پروژه‌ها
خطا هنگام اجرا
Url: C:\Users\Morteza\Downloads\ExplorerPCalV.1.1\Bin\ExplorerPCal.exe 
-> ExplorerPCal, Version=1.1.0.0, Culture=neutral, PublicKeyToken=a55a2614eb2aee77
Caller: ExplorerPCal.App -> appDispatcherUnhandledException
Exception classes:
   System.NullReferenceException
   System.Reflection.TargetInvocationException
   System.Reflection.TargetInvocationException

Exception messages:
   Object reference not set to an instance of an object.
   Exception has been thrown by the target of an invocation.

   Exception has been thrown by the target of an invocation.

Stack Traces:
   at ExplorerPCal.Utils.ConfigSetGet.GetConfigData(String key)
اشتراک‌ها
پشتیبانی Brotli در فایرفاکس 44
 recently, new formats struggled with matching the decoding rates of gzip, but lately a new contender named brotli has shown impressive results. It has been able to improve on gzip anywhere from 20% to 40% in terms of compression ratios while keeping up on the decoding rate. 
پشتیبانی Brotli در فایرفاکس 44
اشتراک‌ها
NXPorts؛ میسر کردن استفاده از کتابخانه‌های دات نتی در C++, C, Rust, Delphi, Python

A MSBuild-integrated library/tool to expose entrypoints in .NET assemblies to the platform invocation system or short PInvoke. It allows you to build .NET libraries that can be called from any development platform that supports PInvoke, including C++, C, Rust, Delphi, Python and so on... 

NXPorts؛ میسر کردن استفاده از کتابخانه‌های دات نتی در C++, C, Rust, Delphi, Python