Пример #1
0
        private string GetLayerFields(string layerId)
        {
            StringBuilder str = new StringBuilder();

            try
            {
                var query = from a in _ILayerContentRepository.GetAll()
                            join b in _ILayerFieldRepository.GetAll()
                            on a.Id equals b.LayerID
                            where a.Id == layerId
                            select new
                {
                    b.AttributeName
                };
                if (query != null)
                {
                    foreach (var item in query)
                    {
                        str.Append("\"");
                        str.Append(item.AttributeName);
                        str.Append("\"");
                        str.Append(",");
                    }
                    if (str.Length > 0)
                    {
                        str.Length = str.Length - 1;
                    }
                }
                return(str.ToString());
            }
            catch (Exception ex)
            {
                return(string.Empty);
            }
        }
Пример #2
0
        /// <summary>
        /// 通过图层ID获取字段字典集合
        /// </summary>
        /// <param name="layerID"></param>
        /// <returns></returns>
        public ListResultOutput <LayerFieldDictDto> GetFieldDictByLayerID(string layerID)
        {
            try
            {
                List <LayerFieldDictDto> layerFieldDicts = new List <LayerFieldDictDto>();
                var query = _ILayerFieldRepository.GetAll().Where(q => q.LayerID == layerID && q.AttributeDataType == "T").ToList();
                foreach (var item in query)
                {
                    string fieldId = item.Id;
                    var    result  = _ILayerFieldDictRepository.GetAll().Where(t => t.AttributeID == fieldId).ToList();

                    foreach (var detail in result)
                    {
                        LayerFieldDictDto dto = new LayerFieldDictDto();
                        dto.AttributeID   = detail.AttributeID;
                        dto.FieldDictDesc = detail.FieldDictDesc;
                        dto.FieldDictName = detail.FieldDictName;
                        dto.Id            = detail.Id;
                        layerFieldDicts.Add(dto);
                    }
                }

                var list = new ListResultOutput <LayerFieldDictDto>(layerFieldDicts);
                return(list);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }