コード例 #1
0
        public virtual MenuLink CreateMenuLink(string type)
        {
            var result = new MenuLink();

            if (type != null)
            {
                if ("product" == type.ToLowerInvariant())
                {
                    result = new ProductMenuLink();
                }
                else if ("category" == type.ToLowerInvariant())
                {
                    result = new CategoryMenuLink();
                }
            }
            return(result);
        }
コード例 #2
0
        public virtual MenuLink ToMenuLink(contentDto.MenuLink menuLinkDto)
        {
            var result = new MenuLink();

            if (menuLinkDto.AssociatedObjectType != null)
            {
                if ("product" == menuLinkDto.AssociatedObjectType.ToLowerInvariant())
                {
                    result = new ProductMenuLink();
                }
                else if ("category" == menuLinkDto.AssociatedObjectType.ToLowerInvariant())
                {
                    result = new CategoryMenuLink();
                }
            }
            result.InjectFrom <NullableAndEnumValueInjecter>(menuLinkDto);

            return(result);
        }
コード例 #3
0
        public static MenuLink ToWebModel(this VirtoCommerceContentWebModelsMenuLink serviceModel)
        {
            var webModel = new MenuLink();

            if (serviceModel.AssociatedObjectType != null)
            {
                if ("product" == serviceModel.AssociatedObjectType.ToLowerInvariant())
                {
                    webModel = new ProductMenuLink();
                }
                else if ("category" == serviceModel.AssociatedObjectType.ToLowerInvariant())
                {
                    webModel = new CategoryMenuLink();
                }
            }

            webModel.InjectFrom(serviceModel);

            return(webModel);
        }
コード例 #4
0
        public static MenuLink ToWebModel(this VirtoCommerceContentWebModelsMenuLink serviceModel, IStorefrontUrlBuilder urlBuilder)
        {
            var webModel = new MenuLink();

            if (serviceModel.AssociatedObjectType != null)
            {
                if ("product" == serviceModel.AssociatedObjectType.ToLowerInvariant())
                {
                    webModel = new ProductMenuLink();
                }
                else if ("category" == serviceModel.AssociatedObjectType.ToLowerInvariant())
                {
                    webModel = new CategoryMenuLink();
                }
            }

            webModel.InjectFrom(serviceModel);

            webModel.Url = urlBuilder.ToAppAbsolute("/" + serviceModel.Url);

            return(webModel);
        }
コード例 #5
0
        public static MenuLink ToMenuLink(this contentDto.MenuLink menuLinkDto)
        {
            var result = new MenuLink();

            if (menuLinkDto.AssociatedObjectType != null)
            {
                if ("product" == menuLinkDto.AssociatedObjectType.ToLowerInvariant())
                {
                    result = new ProductMenuLink();
                }
                else if ("category" == menuLinkDto.AssociatedObjectType.ToLowerInvariant())
                {
                    result = new CategoryMenuLink();
                }
            }
            result.Id = menuLinkDto.Id;
            result.AssociatedObjectId   = menuLinkDto.AssociatedObjectId;
            result.AssociatedObjectType = menuLinkDto.AssociatedObjectType;
            result.Priority             = menuLinkDto.Priority ?? 0;
            result.Title = menuLinkDto.Title;
            result.Url   = menuLinkDto.Url;
            return(result);
        }