Я столкнулся с проблемой при реализации контейнера Unity (Injection Dependency Injection и контейнеров Io C) из-за невозможности найти пространство имен для «UnityServiceLocator» в форме Xamarin.
Я получаю сообщение об ошибке at var unityServiceLocator = new UnityServiceLocator (Container);
ошибка CS0246: не удалось найти тип или имя пространства имен UnityServiceLocator (отсутствует ли у вас директива using или сборка ссылка?)
Я использую. Net Framework 2.1 с помощью Visual Studio 2019.
Пакет Nu-get Установить как:
Unity (5.11. 7)
CommonServiceLocator (2.0.5)
Xamarin.Essentials (1.3.1)
Xamarin.Forms (4.7.0.1.1080)
using System;
using TestXamarinMVVM.Services;
using TestXamarinMVVM.View;
using Unity;
using CommonServiceLocator;
using Xamarin.Forms;
using Xamarin.Forms.Xaml;
namespace TestXamarinMVVM
{
public partial class App : Application
{
public static UnityContainer Container { get; private set; }
public App()
{
InitializeComponent();
Container = new UnityContainer();
Container.RegisterType<IProductService, ProductService>();
**var unityServiceLocator = new UnityServiceLocator(Container);**
ServiceLocator.SetLocatorProvider(() => unityServiceLocator);
//MainPage = new PersonDispaly();
MainPage = new ProductPage();
}
protected override void OnStart()
{
}
protected override void OnSleep()
{
}
protected override void OnResume()
{
}
}
}
Не знаю, где делаю ошибку! Пожалуйста, помогите мне.