Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю
Далее добавьте в проект
CSharpSnapInCommonSnappableTypesCSharpSnapInCommonSnappableTypesПовторите процесс для нового проекта библиотеки классов Visual Basic (VBSnapIn), которая ссылается на проект
CommonSnappableTypesНаконец, добавьте к решению новый проект консольного приложения .NET Core по имени
MyExtendableAppCommonSnappableTypesMyExtendableAppНа заметку! Если вы щелкнете правой кнопкой мыши на имени решения
ExtendableAppУстановка зависимостей проектов при компиляции
Когда среде Visual Studio поступает команда запустить решение, стартовый проект и все проекты, на которые имеются ссылки, компилируются в случае обнаружения любых изменений; однако проекты, ссылки на которые отсутствуют, не компилируются. Положение дел можно изменить, устанавливая зависимости проектов. Для этого щелкните правой кнопкой мыши на имени решения в окне Solution Explorer, выберите в контекстном меню пункт Project Build Order (Порядок компиляции проектов), в открывшемся диалоговом окне перейдите на вкладку Dependencies (Зависимости) и в раскрывающемся списке Projects (Проекты) выберите
MyExtendableAppОбратите внимание, что проект
CommonSnappableTypesCSharpSnapInVBSnapIn
Теперь при каждой компиляции проекта
MyExtendableAppCSharpSnapInVBSnapInДобавление событий PostBuild
Откройте окно свойств проекта для
CSharpSnapInc-sharp-wfcodechapterl7*.csprojВведите в области PostBuild (После компиляции) следующие две строки:
copy $(TargetPath) $(SolutionDir)MyExtendableApp$(OutDir)$(TargetFileName) /Ycopy $(TargetPath) $(SolutionDir)MyExtendableApp$(TargetFileName) /YСделайте то же самое для проекта
VBSnapinКогда показанные выше команды событий после компиляции добавлены, все сборки при каждой компиляции будут копироваться в каталог проекта и выходной каталог приложения
MyExtendableAppПостроение сборки CommonSnappableTypes.dll
Удалите стандартный файл класса
Class1.csCommonSnappableTypesAppFunctionality.csnamespace CommonSnappableTypes{ public interface IAppFunctionality { void DoIt(); }}Добавьте файл класса по имени
CompanyInfoAttribute.csusing System;namespace CommonSnappableTypes{ [AttributeUsage(AttributeTargets.Class)] public sealed class CompanyInfoAttribute : System.Attribute { public string CompanyName { get; set; } public string CompanyUrl { get; set; } }}Тип
IAppFunctionalityDoIt()Тип
CompanyInfoAttribute[CompanyInfо]Построение оснастки на C#
Удалите стандартный файл
Class1.csCSharpSnapInCSharpModule.csПохожие книги на "Язык программирования C#9 и платформа .NET5", Троелсен Эндрю
Троелсен Эндрю читать все книги автора по порядку
Троелсен Эндрю - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки mir-knigi.info.