Как добавить исходный файл (.cs) в качестве встроенного ресурса встроенной библиотеки DLL

#.net #visual-studio

Вопрос:

У меня есть проект .NET 5 (с использованием формата проекта в стиле SDK). Мое требование состоит в том, что мне нужно загрузить исходный код класса C# во время выполнения (в качестве встроенного ресурса), но мне нужно, чтобы указанный исходный файл также проверялся на наличие ошибок компилятора при создании решения и предложении IntelliSense в Visual Studio.

Установка действия сборки файла в «Встроенный ресурс» в свойствах файла приводит к тому, что файл больше не рассматривается как исходный файл, поэтому он больше не создается и IntelliSense недоступен.

Ответ №1:

Мое решение состояло в том, чтобы установить свойству действия сборки файла значение «Встроенный ресурс», а затем отредактировать файл .csproj проекта. В этот файл <EmbeddedResource> будет добавлен XML-элемент для файла, а также <Compile Remove=""> элемент. Удалите <Compile Remove=""> элемент. Файл по-прежнему будет встроен в библиотеку DLL проекта для загрузки в качестве встроенного ресурса, а также будет обрабатываться как обычный исходный файл .cs.