Тип или имя пространства имен 'Xamarin' отсутствует ошибка в Xamarin Studio

Я получаю такую ​​ошибку:

«MyApp \ App.cs (7,7): Ошибка CS0246: не удалось найти тип или имя пространства имен« Xamarin »(вам не хватает директивы using или ссылки на сборку?) (CS0246)».

Я использую Xamarin Studio для создания кроссплатформенного приложения через Xamarin.Forms. Всякий раз, когда я создаю проект базовой формы, я получаю эту ошибку и не знаю почему.

Я новичок в Xamarin.

Вот код app.cs:

using System;
using Xamarin.Forms;             //This is the line where error occurs

namespace FIrstFormProject
{
    public class App
    {
        public static Page GetMainPage ()
        {
            return new ContentPage 
            {
                Content = new Label 
                {
                    Text = "Hello, Forms !",
                    VerticalOptions = LayoutOptions.CenterAndExpand,
                    HorizontalOptions = LayoutOptions.CenterAndExpand,
                },
            };
        }
    }
}

person Hamza Khalil    schedule 02.06.2014    source источник
comment
Вы ссылались на DLL, которая содержит Xamarin.Forms в своем проекте? (предположительно что-то вроде Xamarin.Forms.dll)   -  person Sam Holder    schedule 02.06.2014
comment
@SamHolder нет, но у меня нет возможности добавить эту ссылку. можешь вкратце сказать мне? может быть это причина ошибки   -  person Hamza Khalil    schedule 02.06.2014


Ответы (16)


Сообщение MihaMarkic здесь привели меня к правильному ответу. Для каждого проекта в вашем решении вам необходимо сделать следующее:

  1. Выберите проект на вкладке Решение
  2. Выберите "Проект" в верхнем меню.
  3. Выберите «Добавить пакеты Nuget ...»
  4. Выполните поиск по запросу "Xamarin.forms"
  5. Добавьте в этот проект «Xamarin.forms»

Это рабочий процесс, благодаря которому он работал на моем Mac. Я не уверен, что именно нужно делать пользователям ПК.

person ebandersen    schedule 02.09.2014
comment
работает так же на ПК - как только я понял, где искать шаг 2 - MENU Project; в котором есть пункт меню Добавить пакеты Nuget ... для шага 3. - person ToolmakerSteve; 26.04.2015
comment
для меня "Добавить пакеты Nuget" ... не работает для меня, поэтому я щелкнул "Обновить пакеты Nuget" ... все работает нормально .. спасибо @eckyzero - person S Gaber; 31.10.2016

Сделайте следующее:

  1. Перейти к управлению пакетами NuGet для решения
  2. Удалить Xamarin.Forms
  3. Переустановите Xamarin.Forms
person M Fatih Koca    schedule 19.12.2017
comment
Может просто обновление тоже может помочь. - person D J; 13.05.2020

Мне просто нужно было добавить Xarmin.Forms.Addin.dll в ссылки на приложение. :) (Спасибо держателю @sam, ваша подсказка в комментариях привела меня к ответу.)

person Hamza Khalil    schedule 02.06.2014
comment
рад, что ты починил - person Sam Holder; 02.06.2014
comment
По большей части этот ответ - это благодарность, а не реальный ответ. Вероятно, было бы лучше предложить решение, а затем отдать должное другому пользователю, который ведет вас в правильном направлении. Также не помешало бы конкретизировать шаги, которые вы предприняли для решения проблемы. - person Allan; 09.10.2014
comment
Расскажите, пожалуйста, как вы это исправили. Спасибо отстой. - person dubyaa; 28.10.2014
comment
Это ссылка, чтобы узнать, как добавить ссылку. вам просто нужно добавить библиотеку Xamarin.Froms.Addin, чтобы справиться с этой ошибкой. - person Hamza Khalil; 07.11.2014
comment
Где бы располагался Xamarin.Forms.Addin? - person Shilpa Soni; 19.02.2015
comment
@ShilpaSoni Строка меню - ›Проект -› Добавить пакеты NuGet - ›Xamarin.Forms - person cowlinator; 29.05.2015

Мне нужно объединить несколько предыдущих ответов:

  • Переустановите Nugets (Xamarin.Forms)
  • Перезапустить VS2019
person Suplanus    schedule 04.04.2019
comment
Это случилось со мной после обновления Xamarin.Forms до версии 4.1. Мне пришлось перезапустить Visual Studio, чтобы она снова заработала. - person Santiago quits SO; 19.07.2019

  1. Перейдите в раздел «Управление пакетами NuGet ...
  2. Просмотреть в установленной вкладке
  3. Если пакет Xamarine.Forms существует, обновите его.
  4. Если нет, перейдите на вкладку «Обзор», найдите Xamarine.Forms и установите его.
person Saleem Kalro    schedule 02.07.2018

  • Выберите решение и щелкните правой кнопкой мыши.
  • Перейдите в раздел Управление пакетами Nuget для решения.
  • Заходим в обновления.
  • если есть xamarin.forms, обновите его.

Вы готовы к работе с xamarin.forms :)

person Nisargi Joshi    schedule 09.05.2017
comment
После обновления мне нужно было закрыть и снова открыть VS (VS2017 в моем случае), прежде чем ссылки появятся снова. - person Andy S.; 17.01.2018
comment
@AndyS. Спасибо за ваш комментарий. Мне это помогло. - person rach; 17.04.2018

Выберите решение и щелкните правой кнопкой мыши "Перейти к восстановлению" Управление пакетами Nuget.

person FabioSSena    schedule 04.02.2018

После удаления / чтения пакета NuGet Xamarin.Forms два раза и после исправления этой проблемы я перезапустил свою Visual Studio (15.9.0), и она сработала. Это было совершенно новое решение, которое я создал, и у меня сразу же возникла эта проблема.

person myroslav    schedule 23.11.2018

Был у меня сегодня в VS MAC.

Удаление скрытой папки ".vs" исправило это для меня.

person NikolaiT    schedule 12.08.2019

У меня VS 2019, и мне было предложено обновить Android SDK. После этого у меня появилось множество ошибок компилятора, включая The type or namespace name 'Forms' does not exist in the namespace 'Xamarin'. После обновления моего пакета NuGet до последней версии ошибки были устранены (с 4.3.0.947036 до 4.3.0.991211).

person Adam Hey    schedule 03.12.2019

Тривиальное решение, которое стоит попробовать, прежде чем переходить к более серьезным методам: Перезапустите Visual Studio.


Контекст в моем случае таков, что решение уже компилировалось ранее, но перестало делать это после изменений в коде. В моем случае все, что я сделал, это изменил файл XAML, добавил ресурс и сослался на указанный ресурс в файле XAML. До этого Xamarin.Forms был найден, впоследствии он больше не находился Visual Studio по неизвестной причине.

Перезапуск Visual Studio решил проблему.

Это, вероятно, актуально только в том случае, если Xamarin.Forms был обнаружен раньше и внезапно пропал, перезапуск явно не подходит для исправления ошибок с настройкой проекта.

Это также иногда (хотя и не всегда) происходит при изменении пакета Xamarin.Forms NuGet, т.е. для проектов устанавливается другой пакет.

person Koenigsberg    schedule 12.11.2020

Сделайте следующее

  1. Установите последние справочные сборки переносимой библиотеки Microsoft .NET.
  2. Извлеките файл из «C: \ Program Files \ Microsoft .NET Portable Library Reference Assemblies 4.6 \ PortableReferenceAssemblies.zip» в «C: \ Program Files (x86) \ Reference Assemblies \ Microsoft \ Framework.NETPortable» в 64-битной версии и «C: \ Program Files \ Reference Assemblies \ Microsoft \ Framework.NETPortable "в 32-разрядной версии.

3. Перейдите в панель управления, выберите программы и функции и щелкните правой кнопкой мыши xamarin и выберите «Восстановить». 4. Снова запустите xamarin studio.

person Shyju M    schedule 30.03.2015

Это произошло, когда я удалил библиотеки Xamarin.Android.Support.v4 и Xamarin.Forms, чтобы перейти на более раннюю версию. Я снова заставил его работать, сбросив Droid packages.config на:

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="Xamarin.Android.Support.v4" version="22.1.1" targetFramework="MonoAndroid44" />
  <package id="Xamarin.Forms" version="1.4.2.6355" targetFramework="MonoAndroid44" />
</packages>

Затем щелкните правой кнопкой мыши папку Droid Packages, чтобы Восстановить отсутствующие пакеты. Последний шаг - добавить References> From Packages в * .Droid.csproj

<Reference Include="Xamarin.Android.Support.v4">
  <HintPath>..\packages\Xamarin.Android.Support.v4.22.1.1\lib\MonoAndroid403\Xamarin.Android.Support.v4.dll</HintPath>
</Reference>
<Reference Include="Xamarin.Forms.Platform.Android">
  <HintPath>..\packages\Xamarin.Forms.1.4.2.6355\lib\MonoAndroid10\Xamarin.Forms.Platform.Android.dll</HintPath>
</Reference>
<Reference Include="FormsViewGroup">
  <HintPath>..\packages\Xamarin.Forms.1.4.2.6355\lib\MonoAndroid10\FormsViewGroup.dll</HintPath>
</Reference>
<Reference Include="Xamarin.Forms.Core">
  <HintPath>..\packages\Xamarin.Forms.1.4.2.6355\lib\MonoAndroid10\Xamarin.Forms.Core.dll</HintPath>
</Reference>
<Reference Include="Xamarin.Forms.Xaml">
  <HintPath>..\packages\Xamarin.Forms.1.4.2.6355\lib\MonoAndroid10\Xamarin.Forms.Xaml.dll</HintPath>
</Reference>
<Reference Include="Xamarin.Forms.Platform">
  <HintPath>..\packages\Xamarin.Forms.1.4.2.6355\lib\MonoAndroid10\Xamarin.Forms.Platform.dll</HintPath>
</Reference>
person David Douglas    schedule 28.04.2015

Ищите свою цель. Некоторые цели несовместимы с Xamarin.

person Vagner Gon    schedule 22.02.2016

Мне пришлось удалить и переустановить Nuget Xamarin.Forms как в библиотеке Android, так и в библиотеке PCL.

person IvanH    schedule 24.03.2018

Я зашел в установщик Visual Studio и установил пакет классических приложений .Net (извините, я не знаю точное имя, потому что у меня русская версия), и это мне помогло.

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

person Алексей Буров    schedule 14.12.2020