1
嗨我正在嘗試設置一個測試項目,以便在使用Unity IoC容器和Moq時實現一些單元測試。RegisterType導致錯誤
我似乎得到一個錯誤,當我嘗試註冊在Unity.This類型是我的代碼:
public static class SetupMockObjects
{
public static IProductRepository GetProductRepository() {
Mock<IProductRepository> productRepository = new Mock<IProductRepository>();
productRepository.Setup(m => m.Products).Returns(new List<Product> {
new Product { Name = "Football" , Price = 25 },
new Product { Name = "Surf board" , Price = 179 },
new Product { Name = "Running shoes" , Price = 95 }
});
return productRepository.Object;
}
}
public static void Initialise()
{
var container = BuildUnityContainer();
DependencyResolver.SetResolver(new UnityDependencyResolver(container));
}
private static IUnityContainer BuildUnityContainer()
{
var container = new UnityContainer();
container.RegisterType<IProductRepository , SetupMockObjects.GetProductRepository()>();
return container;
}
現在我在這裏創建一個模擬對象,只是因爲我不想創建數據訪問層,所以我認爲只是創建一個模擬對象會更容易。
的問題是內部BuildUnityContainer()方法時,我嘗試註冊類型我得到這個錯誤:
Error 1 Invalid expression term ','
Error 2 ; expected
Error 3 ; expected
Error 4 Invalid expression term ')'
Error 5 ) expected
我prety相信我打電話RegisterType用正確的泛型參數這就是爲什麼我不明白爲什麼會出現這些錯誤。我犯了什麼錯誤?