В настоящее время я создаю приложение Xamarin Forms для iOS поверх .NET Standard v1.3. У меня возникает проблема с компиляцией приложения, когда я использую Xamarin Studio на Mac, но он отлично работает в Visual Studio в Windows и на отдельном компьютере, на котором запущена новая предварительная версия Visual Studio для Mac.
В Xamarin Studio для Mac я получаю эту ошибку при компиляции приложения:
App.xaml.cs(25,13): error CS0103: The name `InitializeComponent' does not exist in the current context
Base/BaseView.xaml.cs(11,13): error CS0103: The name `InitializeComponent' does not exist in the current context
View/LoginView.xaml.cs(9,13): error CS0103: The name `InitializeComponent' does not exist in the current context
Это происходит с каждым файлом XAML в решении. Я понимаю, почему - файлы *.xaml.g.cs
не создаются. В Visual Studio для Windows и Visual Studio Preview для Mac они помещаются в папку проекта obj/Release
, но в Xamarin Studio для Mac они вообще не создаются.
У меня есть другое приложение Xamarin Forms, в котором используется полная платформа .NET Framework, а не .NET Standard. Это приложение отлично компилируется в Xamarin Studio для Mac. Это наводит меня на мысль, что проблема может быть связана со стандартом .NET.
На основном Mac я запускаю Xamarin Studio (6.1.5) с Mono 4.6.2, Xamarin.Android 7.0.2.42, Xamarin.iOS 10.3.1.8. В Windows я запускаю Visual Studio 2015 с обновлением 3 (14.0.25341) с Xamarin 4.2.2.11, Xamarin.Android 7.0.2.42 и Xamarin.iOS 10.3.1.8. На втором Mac я запускаю Visual Studio для Mac Preview 3 (7.0 build 1077) с Xamarin iOS 10.4.0.88.
Я не знаю, помогает ли это вообще, но в Visual Studio для Windows я также получаю эту ошибку в каждом файле XAML (но проект по-прежнему компилируется нормально):
Build action 'EmbeddedResource' is not supported by one or more of the project's targets.
Есть ли причина, по которой в Xamarin Studio для Mac не создаются файлы *.xaml.g.cs
- возможно, связанные с использованием .NET Standard?
Если мне нужно переключиться на предварительную версию Visual Studio для Mac, я подумаю об этом, но я бы предпочел не полагаться на предварительную версию инструмента для производственного проекта.