Exemplo n.º 1
0
        /// <summary>
        /// 从查询结果复制数据
        /// </summary>
        /// <param name="cursor"></param>
        public void CopyFrom(ZFeatureCursor cursor)
        {
            IFeatureCursor this_cursor = featureClass.Insert(true);
            ZFeature       feature     = null;

            while (null != (feature = cursor.NextFeature()))
            {
                IFeatureBuffer buffer = featureClass.CreateFeatureBuffer();
                buffer.Shape = feature.Shape.geometry;
                for (int i = 0; i < featureClass.Fields.FieldCount; i++)
                {
                    buffer.Value[i] = feature.GetValue(i);
                }
                this_cursor.InsertFeature(buffer);
            }
            this_cursor.Flush();
        }
Exemplo n.º 2
0
        /// <summary>
        /// 复制一条记录并插入
        /// </summary>
        /// <param name="zFeature"></param>
        public void CopyAndInsert(ZFeature zFeature)
        {
            IFeatureCursor cursor  = featureClass.Insert(false);
            IFeature       feature = featureClass.CreateFeature();

            feature.Shape = zFeature.ShapeCopy.geometry;
            int n = feature.Fields.FieldCount;

            for (int i = 0; i < n; i++)
            {
                IField field = feature.Fields.Field[i];
                if (field.Editable)
                {
                    feature.Value[i] = zFeature.GetValue(i);
                }
            }
            feature.Store();
        }