public ObjectTemplate(IRow pRow) { _id = pRow.OID; _name = FeatureHelper.GetRowValue(pRow, "TemplateName").ToString(); _baseName = FeatureHelper.GetRowValue(pRow, "BaseName").ToString(); _aliasName = FeatureHelper.GetRowValue(pRow, "AliasName").ToString(); _datasetName = FeatureHelper.GetRowValue(pRow, "Dataset").ToString(); _geometryTypeName = FeatureHelper.GetRowValue(pRow, "GeometryType").ToString(); _geometryTypeName = string.IsNullOrEmpty(_geometryTypeName)?"Point":_geometryTypeName; _featureTypeName = FeatureHelper.GetRowValue(pRow, "FeatureType").ToString(); _featureTypeName = string.IsNullOrEmpty(_featureTypeName) ? "Simple" : _featureTypeName; _geometryType = GeometryHelper.ConvertFromString(_geometryTypeName); _featureType = FeatureHelper.ConvertStringToFeatureType(_featureTypeName); _fieldDefValues = FeatureHelper.GetRowValue(pRow, "FieldDefs").ToString(); if (string.IsNullOrEmpty(_fieldDefValues)) { _fields = new List <YTField>(); } else { _fields = JsonConvert.DeserializeObject <List <YTField> >(_fieldDefValues); } }
public void ReadFromXml(XmlNode xmlNode) { if (xmlNode.Attributes != null) { _name = xmlNode.Attributes["Name"].Value; _baseName = xmlNode.Attributes["BaseName"].Value; _aliasName = xmlNode.Attributes["AliasName"].Value; _datasetName = xmlNode.Attributes["Dataset"].Value; _geometryTypeName = xmlNode.Attributes["GeometryType"].Value; _geometryType = string.IsNullOrEmpty(_geometryTypeName) ? esriGeometryType.esriGeometryPoint : GeometryHelper.ConvertFromString(_geometryTypeName); _featureTypeName = xmlNode.Attributes["FeatureType"].Value; _featureType = string.IsNullOrEmpty(_featureTypeName) ? esriFeatureType.esriFTSimple : FeatureHelper.ConvertStringToFeatureType(_featureTypeName); } XmlNodeList nodeList = xmlNode.SelectNodes($"/ObjectTemplates/Template[@Name='{_name}']/Fields/Field"); foreach (XmlNode node in nodeList) { YTField field = new YTField(node); _fields.Add(field); } }