Example #1
0
        /// <summary>
        /// 获取一级地区
        /// </summary>
        /// <param name="rootAreaCode">根级地区(默认取站点地区配置)</param>
        public Dictionary <string, string> GetRootAreaDictionary(string rootAreaCode = null)
        {
            if (rootAreaCode == null)
            {
                IAreaSettingsManager areaSettingsManager = DIContainer.Resolve <IAreaSettingsManager>();
                if (areaSettingsManager != null)
                {
                    AreaSettings areaSettings = areaSettingsManager.Get();
                    rootAreaCode = areaSettings.RootAreaCode;
                }
            }
            //获取根级地区
            IEnumerable <Area> areas = null;

            if (!string.IsNullOrEmpty(rootAreaCode))
            {
                Area area = areaService.Get(rootAreaCode);
                if (area != null)
                {
                    areas = area.Children;
                }
            }
            else
            {
                areas = areaService.GetRoots();
            }
            if (areas == null)
            {
                return(null);
            }

            return(areas.ToDictionary(n => n.AreaCode, n => n.Name));
        }
Example #2
0
        /// <summary>
        /// 地区下拉列表
        /// </summary>
        /// <param name="htmlHelper">被扩展的htmlHelper实例</param>
        /// <param name="name">控件name属性</param>
        /// <param name="name">选中的地区编码</param>
        /// <param name="areaLevel">地区层级(默认取站点配置)</param>
        /// <param name="rootAreaCode">根级地区(默认取站点地区配置)</param>
        public static MvcHtmlString AreaDropDownList(this HtmlHelper htmlHelper, string name, string value, int?areaLevel = null, string rootAreaCode = null)
        {
            string            getChildAreasUrl  = SiteUrls.Instance().GetChildAreas();
            AreaServiceHelper areaServiceHelper = new AreaServiceHelper();

            if (areaLevel == null)
            {
                IAreaSettingsManager areaSettingsManager = DIContainer.Resolve <IAreaSettingsManager>();
                AreaSettings         areaSettings        = areaSettingsManager.Get();
                areaLevel = areaSettings.AreaLevel;
            }
            return(htmlHelper.LinkageDropDownList <string>(name, value, string.Empty, areaLevel.Value, areaServiceHelper.GetRootAreaDictionary(rootAreaCode), areaServiceHelper.GetParentCode, areaServiceHelper.GetChildrenDictionary, getChildAreasUrl));
        }