コード例 #1
0
        private void ImportRouteSettings(ImportContentContext context, CacheSettingsPart part)
        {
            var partElement = context.Data.Element(part.PartDefinition.Name);

            // Don't do anything if the tag is not specified.
            if (partElement == null)
            {
                return;
            }

            var routesElement = partElement.Element("Routes");

            if (routesElement == null)
            {
                return;
            }

            var routeConfigs = routesElement.Elements().Select(x => new CacheRouteConfig {
                RouteKey    = x.Attr("Key"),
                Duration    = x.Attr <int?>("Duration"),
                Priority    = x.Attr <int>("Priority"),
                Url         = x.Attr("Url"),
                MaxAge      = x.Attr <int?>("MaxAge"),
                GraceTime   = x.Attr <int?>("GraceTime"),
                FeatureName = x.Attr("FeatureName")
            });

            _cacheService.SaveRouteConfigs(routeConfigs);
        }
コード例 #2
0
        private void ExportRouteSettings(ExportContentContext context, CacheSettingsPart part)
        {
            var routes        = _cacheService.GetRouteConfigs();
            var routesElement = new XElement("Routes",
                                             routes.Select(x => new XElement("Route")
                                                           .Attr("Key", x.RouteKey)
                                                           .Attr("Url", x.Url)
                                                           .Attr("Priority", x.Priority)
                                                           .Attr("Duration", x.Duration)
                                                           .Attr("GraceTime", x.GraceTime)
                                                           .Attr("MaxAge", x.MaxAge)
                                                           .Attr("FeatureName", x.FeatureName)));

            context.Element(part.PartDefinition.Name).Add(routesElement);
        }