Очень понятное объяснение, что же такое Zenject, Dependency Injection и всё такое
Рекомендую)
Что внутри?
• 00:36 - Другие годные источники по зенджекту
• 02:20 - Что такое Dependency Injection?
• 03:39 - Проблема DI — большое количество сервисов
• 04:02 - Проблема DI — вложенные зависимости
• 04:56 - Проблема DI — разное время жизни сервисов
• 05:45 - Что делает Zenject?
• 06:35 - Binding в Zenject
• 07:54 - Installer-s в Zenject
• 09:16 - Context в Zenject
• 10:54 - Как это всё работает
• 11:54 - Дополнительные инструменты Zenject-а
• 13:04 - ITickable, IInitializable и IDisposable
@csharp_ci
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
https://github.com/dotnet/runwww.tg-me.com/issues/101437
#dotNET
@csharp_ci
Please open Telegram to view this post
VIEW IN TELEGRAM
GitHub
List Add is way slower (almost 3 times) in `net9.0 preview 3` than with `net8.0` · Issue #101437 · dotnet/runtime
With the latest preview 3 (net9) there seems to be a major performance regression on MacOS 14.4 (M2 Pro) with lists. Given that they are one of the most used types, it should receive special treatm...
Держите полезный репозиторий с материалами о разворачивании и обслуживании .NET-приложений в AWS.
В частности, освещаются такие моменты:
— Настройка учетных данных AWS для приложений .NET
— Работа с AWS S3 в ASP.NET Core Web API
— Amazon API Gateway для разработчиков .NET
— Как защитить Amazon API Gateway с помощью Lambda Authorizer?
@csharp_1001_notes
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
В рамках запуска Phi-3 Microsoft выпустила оптимизированные модели ONNX, как подробно описано в статье «ONNX Runtime supports Phi-3 mini models across platforms and devices».
Также модели Phi-3 mini опубликованы на HuggingFace 🤗
Используя всё это, можно легко запустить модель локально всего в нескольких строках C#, как показано в этом гайде.
А вот те самые 30 строк:
using Microsoft.ML.OnnxRuntimeGenAI;
var modelDirectory = args.Length == 2 ? args[1] :
@"C:\git\oss\Phi-3-mini-4k-instruct-onnx\cuda\cuda-int4-rtn-block-32";
using var model = new Model(modelDirectory);
using var tokenizer = new Tokenizer(model);
while (true)
{
Console.Write("Prompt: ");
var line = Console.ReadLine();
if (line == null) { continue; }
using var tokens = tokenizer.Encode(line);
using var generatorParams = new GeneratorParams(model);
generatorParams.SetSearchOption("max_length", 2048);
generatorParams.SetInputSequences(tokens);
using var generator = new Generator(model, generatorParams);
while (!generator.IsDone())
{
generator.ComputeLogits();
generator.GenerateNextToken();
var outputTokens = generator.GetSequence(0);
var newToken = outputTokens.Slice(outputTokens.Length - 1, 1);
var output = tokenizer.Decode(newToken);
Console.Write(output);
}
Console.WriteLine();
}
@csharp_1001_notes
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Это набор инструментов Swagger/OpenAPI 2.0 и 3.0 для .NET, .NET Core, Web API, ASP.NET Core, TypeScript и других платформ.
Предоставляет возможность генерации спецификаций OpenAPI из существующих контроллеров ASP.NET Web API и клиентского кода из этих спецификаций OpenAPI.
NSwag объединяет функциональность Swashbuckle (генерация OpenAPI/Swagger) и AutoRest (генерация клиента) в одном наборе инструментов.
Таким образом можно избежать многих несовместимостей и лучше поддерживать функции, которые не очень хорошо описаны в спецификации OpenAPI или JSON Schema (например, наследование, обработка перечислений и ссылок)
@csharp_1001_notes
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
QuestPDF — это .NET open-source библиотека для создания PDF-документов. Предлагает комплексный механизм верстки на основе лаконичного и удобного C# Fluent API.
Позволяет легко генерировать PDF-отчеты и любые документы.
@csharp_1001_notes
Please open Telegram to view this post
VIEW IN TELEGRAM
Harmony — это библиотека для исправления, замены и декорирования методов .NET и Mono во время выполнения.
Harmony предоставляет высокоуровневый подход к изменению функциональности в C#-приложениях.
@csharp_1001_notes
Please open Telegram to view this post
VIEW IN TELEGRAM
Быстрый старт с помощью Docker:
docker run -p 5000:80 simplcommerce/ci-build
@csharp_1001_notes
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
В этом репозитории GitHub приведены примеры, которые помогут начать работу с ML.NET и узнать, как внедрить ML в существующие и новые приложения .NET.
В репозитории есть 2 типа примеров/приложений:
— Прототипы / MVP, обычно реализованные в виде простых консольных приложений
— Полноценные приложения: примеры веб- и нативных приложений с моделями машинного обучения на основе ML.NET
@csharp_1001_notes
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
—
dotnet new --install AntDesign.Templates
Фишки AntDesign:
— набор высококачественных компонентов Blazor из коробки.
— поддержка взаимодействия с событиями UI на основе WebAssembly на стороне клиента и SignalR на стороне сервера
— поддержка прогрессивных веб-приложений (PWA)
— упрощает локализацию за счёт поддержки десятков языков
— бесшовная интеграция с существующими проектами ASP.NET Core MVC и Razor Pages
@csharp_ci
Please open Telegram to view this post
VIEW IN TELEGRAM
—
dotnet add package Riok.Mapperly
Mapperly значительно упрощает реализацию отображений объектов на объекты. Необходимо только определить сигнатуру методов отображения.
@csharp_1001_notes
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM