Указание ссылок на проект на основе конфигурации сборки в Xamarin-Visual Studio (VSTS + App Center)

введите здесь описание изображения

Как вы можете видеть на рисунке выше, я пытаюсь создать приложение Xamarin Forms. Приложение в основном представляет собой служебное приложение для розничной торговли, которое будет ориентировано на регион США и Японию.

В данной структуре Project SuppplyApp.Main — это входной проект Xamarin Forms, который перемещается из проектов iOS и Android.

А SupplyApp.Japan и SupplyApp.US — это специальные функции для регионов США и Японии соответственно.

По сути, я хотел бы использовать их комбинацию на основе конфигурации (например: - SupplyApp.Main + SupplyApp.US ИЛИ SupplyApp.Main + SupplyApp.Japan)

Я использую комбинацию VSTS и Visual Studio App Center для своего CICD и дистрибутива.

Здесь я сомневаюсь во время создания сборки, можно ли ссылаться на проекты (SupplyApp.US / SupplyApp.Japan) на основе какой-либо конфигурации сборки. Или, если он недоступен через VSTS, как я могу добиться того же с помощью Visual Studio.

Может кто-нибудь, пожалуйста, помогите мне решить эту проблему. Я нашел несколько решений, основанных на традиционном проекте .Net, но я не нашел ничего подобного для Xamarin.




Ответы (1)


Справочная информация о проекте хранится в файле проекта, поэтому лучше настроить ее в файле проекта для другой конфигурации (щелкните правой кнопкой мыши проект в VS > Выгрузить проект > Щелкните проект правой кнопкой мыши > Редактировать xxx.proj), например:

<ItemGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
    <ProjectReference Include="..\ClassLibrary2\ClassLibrary2.csproj">
      <Project>{08adf376-babd-4d9c-8d7b-9d40cf04745d}</Project>
      <Name>ClassLibrary2</Name>
    </ProjectReference>
  </ItemGroup>

Вы можете создать несколько конфигураций, щелкнув правой кнопкой мыши решение > Диспетчер конфигураций > Щелкните раскрывающийся список управления конфигурацией > Создать > Укажите имя и установите флажок Создать конфигурацию проекта.

После этого вы можете указать другую конфигурацию в сборке VSTS (например, «Конфигурация и платформа» в задаче «Сборка Visual Studio»).

person starian chen-MSFT    schedule 12.04.2018
comment
Я создал конфигурацию проекта с помощью Visual Studio; Теперь, как и где мне нужно исправить сценарий / конфигурацию для добавления проекта в мою сборку. ? Я имею в виду ClassLibrary2 для моего основного проекта (на основе вашего примера) - person StezPet; 12.04.2018
comment
@StezPet Вам просто нужно обновить основной файл проекта (csproj). Шаги: 1. Добавьте ссылки на проект в ваш основной проект (затем будет создана соответствующая группа элементов) 2. Откройте файл основного проекта (csproj) через Блокнот или щелкните правой кнопкой мыши проект в VS ›Выгрузить проект ›Щелкните правой кнопкой мыши проект ›Редактировать xxx.proj 3 , Добавьте свойство условия в связанную группу элементов, например. Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU' ". В моем примере я добавил проект ClassLibrary2 в основной проект, поэтому мне просто нужно добавить свойство условия в связанную группу элементов. - person starian chen-MSFT; 13.04.2018
comment
Спасибо, Старин :) - person StezPet; 13.04.2018