& emsp; Я создаю проект, который должен использоваться на машинах Windows и Linux. Решение содержит 3 проекта: реализацию собственных функций Win - Windows, реализацию собственных функций Lin - Linux и базовый проект, который содержит все зависимости и разрешает их на основе информации времени выполнения.
Проект Win имеет целевой фреймворк: .Net framework 4.6.2, проект Linux: - .Net стандарт 2.0, а основной проект является многоцелевым:
<TargetFrameworks>netstandard2.0;net462</TargetFrameworks>
Проблема здесь в том, что некоторые классы в проекте Win используют UIAutomationClient
и UIAutomationTypes
специфичные для Windows библиотеки DLL. И пока я запускаю свой проект в VS, если приложение вызывает этот класс, я получаю следующее исключение:
Could not load file or assembly 'UIAutomationClient, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. The system cannot find the file specified.
в проекте Win.
Я попытался изменить файл Core.csproj и добавить следующие строки:
<ItemGroup Condition="'$(TargetFramework)'=='net462'">
<Reference Include="UIAutomationClient"/>
<Reference Include="UIAutomationTypes"/>
</ItemGroup>
Но он добавляет ссылки, пока исключение все еще существует.
Помогите мне пожалуйста разобраться, как решить эту проблему.
Я предоставлю больше кода, если это необходимо.
Спасибо