本文整理汇总了C#中ServiceCollection.TryAddEnumerable方法的典型用法代码示例。如果您正苦于以下问题:C# ServiceCollection.TryAddEnumerable方法的具体用法?C# ServiceCollection.TryAddEnumerable怎么用?C# ServiceCollection.TryAddEnumerable使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ServiceCollection
的用法示例。
在下文中一共展示了ServiceCollection.TryAddEnumerable方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Class1
public Class1()
{
var services = new ServiceCollection();
services.TryAddEnumerable(
ServiceDescriptor.Transient<IConfigureOptions<MvcViewOptions>, MvcRazorMvcViewOptionsSetup>());
var serviceProvider = services.BuildServiceProvider();
var option = serviceProvider.GetService<IConfigureOptions<MvcViewOptions>>();
Console.WriteLine("Hello world initialized option: " + option);
// Console.WriteLine(Util.GetMessage() + " initialized option: " + option); // This should not work
}
示例2: ReplaceEnumerableShouldReplaceServiceWithMultipleArguments
public void ReplaceEnumerableShouldReplaceServiceWithMultipleArguments()
{
var serviceCollection = new ServiceCollection();
serviceCollection.TryAddEnumerable(
ServiceDescriptor.Transient<IInjectedService, InjectedService>());
Assert.IsAssignableFrom<InjectedService>(serviceCollection.BuildServiceProvider().GetServices<IInjectedService>().FirstOrDefault());
serviceCollection.ReplaceEnumerable(new List<ServiceDescriptor>
{
ServiceDescriptor.Transient<IInjectedService, ReplaceableInjectedService>()
});
Assert.IsAssignableFrom<ReplaceableInjectedService>(serviceCollection.BuildServiceProvider().GetServices<IInjectedService>().FirstOrDefault());
}
示例3: TryAddEnumerable_ThrowsWhenAddingIndistinguishableImplementationType
public void TryAddEnumerable_ThrowsWhenAddingIndistinguishableImplementationType(
ServiceDescriptor descriptor,
Type serviceType,
Type implementationType)
{
// Arrange
var collection = new ServiceCollection();
// Act & Assert
ExceptionAssert.ThrowsArgument(
() => collection.TryAddEnumerable(descriptor),
"descriptor",
AbstractionResources.FormatTryAddIndistinguishableTypeToEnumerable(implementationType, serviceType));
}
示例4: TryAddEnumerable_DoesNotAddDuplicate
public void TryAddEnumerable_DoesNotAddDuplicate(
ServiceDescriptor descriptor,
Type expectedServiceType,
Type expectedImplementationType,
ServiceLifetime expectedLifetime)
{
// Arrange
var collection = new ServiceCollection();
collection.TryAddEnumerable(descriptor);
// Act
collection.TryAddEnumerable(descriptor);
// Assert
var d = Assert.Single(collection);
Assert.Equal(expectedServiceType, d.ServiceType);
Assert.Equal(expectedImplementationType, d.GetImplementationType());
Assert.Equal(expectedLifetime, d.Lifetime);
}