栅格数据集复制失败: 缺少栅格波段波长属性 Error Code:-2147467259

解决方法: 

IRasterLayer rasterLyr = layer as IRasterLayer;
                            IRasterDataset rstDataset = (rasterLyr.Raster as IRaster2).RasterDataset;
                            if (rstDataset == null) return;

                            if (rstDataset.CanCopy())
                            {
                                string rasterName = Path.GetFileNameWithoutExtension(rstDataset.CompleteName);
                                if (rasterName.IndexOf('.') > -1)
                                    rasterName = rasterName.Remove(rasterName.IndexOf('.'));

                                //FGDBR格式的栅格数据复制失败,单独处理
                                if (rstDataset.Format.Equals("FGDBR"))
                                {
                                    IExtractionOp extraction = new RasterExtractionOpClass();
                                    IGeoDataset geoDataset = extraction.Rectangle((IGeoDataset)rasterLyr.Raster, rasterLyr.AreaOfInterest, true);
                                    if (geoDataset is IRaster2)
                                    {
                                        rstDataset = (geoDataset as IRaster2).RasterDataset;
                                    }                                      
                                }
                                rstDataset = rstDataset.Copy(rasterName, rasterWorkspace) as IRasterDataset;
                                rasterLyr.CreateFromDataset(rstDataset);          
                            }
发布了45 篇原创文章 · 获赞 6 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/sinat_32857543/article/details/90166760