.NET Разработчик
6.66K subscribers
458 photos
4 videos
14 files
2.17K links
Дневник сертифицированного .NET разработчика. Заметки, советы, новости из мира .NET и C#.

Для связи: @SBenzenko

Поддержать канал:
- https://boosty.to/netdeveloperdiary
- https://patreon.com/user?u=52551826
- https://pay.cloudtips.ru/p/70df3b3b
Download Telegram
День 2507. #ЧтоНовенького #NET11
Помощник по MIME-типам в .NET 11

Как обычно, сразу за выходом новой версии .NET, сразу начинаем обсуждать потенциальные новинки следующей версии. .NET 11 обещают выход новых хелпер-методов: MediaTypeMap.GetMediaType и MediaTypeMap.GetExtension, которые значительно упростят веб-разработку!

MediaTypeMap.GetMediaType
Основная идея заключается в получении MIME-типов из указанного файла или расширения:
using System.Net.Mime;

// text/css
_ = MediaTypeMap.GetMediaType("myfile.css");

// application/json
_ = MediaTypeMap.GetMediaType("resource.json");
_ = MediaTypeMap.GetMediaType("rEsOuRCe.JsOn");

// null, т.к. smith – неизвестное расширение
_ = MediaTypeMap.GetMediaType("jon.smith");

// Он также работает с расширениями или с целыми путями
// text/css
_ = MediaTypeMap.GetMediaType("/home/user/myfile.css");
_ = MediaTypeMap.GetMediaType("css");


Мы также можем использовать «обратный поиск» с помощью MediaTypeMap.GetExtension:
using System.Net.Mime;

// ".pdf"
_ = MediaTypeMap.GetExtension("application/pdf");

// ".jpg"
_ = MediaTypeMap.GetExtension("image/jpeg");

// null для неизвестных
_ = MediaTypeMap.GetExtension("madeup/mimetype");
_ = MediaTypeMap.GetExtension("/some/path/basic.css");

Заметьте, что известные расширения начинаются с точки.

См. также:
Обсуждение на GitHub: https://github.com/dotnet/runtime/issues/121017
Полный пул-реквест: https://github.com/dotnet/runtime/pull/121776

Источник: https://steven-giesel.com/blogPost/8f41d316-f6ac-4712-bf11-ea36b7c2f2e6/mime-type-helper-in-net-11
4👍5