コード例 #1
0
        public static Route MapSubDomainRoute(this AreaRegistrationContext context, string name, string subdomain, string url, object defaults, object constraints = null)
        {
            Route route = new SubDomainRoute(context.AreaName, subdomain, url, new MvcRouteHandler())
            {
                Defaults    = new RouteValueDictionary(defaults),
                Constraints = new RouteValueDictionary(constraints)
            };

            route.DataTokens               = new RouteValueDictionary();
            route.DataTokens["area"]       = context.AreaName;
            route.DataTokens["namespaces"] = context.Namespaces.ToArray();
            context.Routes.Add(name, route);

            return(route);
        }
コード例 #2
0
        public void CanParseDefaultsInSubdomain()
        {
            // Arrange & Act
            var subdomainRoute = new SubDomainRoute(
                new[] { "localhost" },
                "{controller=Home}",
                Mock.Of <IRouter>(),
                "default",
                "{action=Index}",
                null,
                null,
                null,
                Mock.Of <IInlineConstraintResolver>());

            //Assert
            Assert.Equal("Home", subdomainRoute.Defaults["controller"]);
            Assert.Equal("Index", subdomainRoute.Defaults["action"]);
        }