コード例 #1
0
    public void ApplyInterfaceHandlerOrdering(EndpointConfiguration endpointConfiguration)
    {
        var handlerDependencies = GetHandlerDependencies(endpointConfiguration);
        var sorted = new TypeSorter(handlerDependencies).Sorted;

        endpointConfiguration.ExecuteTheseHandlersFirst(sorted);
    }
コード例 #2
0
        public void Run()
        {
            var dependencies = new Dictionary <Type, List <Type> >
            {
                [typeof(Class1)] = new List <Type>
                {
                    typeof(Class2),
                    typeof(Class3)
                },
                [typeof(Class2)] = new List <Type>
                {
                    typeof(Class3)
                }
            };
            var sorted = new TypeSorter(dependencies).Sorted;

            Assert.Equal(3, sorted.Count);
            Assert.Equal(typeof(Class3), sorted[0]);
            Assert.Equal(typeof(Class2), sorted[1]);
            Assert.Equal(typeof(Class1), sorted[2]);
        }