ArcGIS Pro 3.0 API Reference Guide
ArcGIS.Core.Data.Raster Namespace / RasterValue Class / SetRasterStorageDef Method
Example

In This Topic
    SetRasterStorageDef Method
    In This Topic
    Sets the raster storage properties of this raster value. This method must be called on the MCT. Use QueuedTask.Run.
    Syntax
    public void SetRasterStorageDef( 
       RasterStorageDef storageDef
    )
    Public Sub SetRasterStorageDef( _
       ByVal storageDef As RasterStorageDef _
    ) 

    Parameters

    storageDef
    Example
    Write a compressed image to a raster field
    QueuedTask.Run(() =>
    {
      //Open the raster dataset on disk and create a compressed raster value dataset object
      var dataStore = new ArcGIS.Core.Data.FileSystemDatastore(new ArcGIS.Core.Data.FileSystemConnectionPath(new System.Uri(@"e:\temp"), ArcGIS.Core.Data.FileSystemDatastoreType.Raster));
      using (var fileRasterDataset = dataStore.OpenDataset<ArcGIS.Core.Data.Raster.RasterDataset>("Hydrant.jpg"))
      {
        var storageDef = new ArcGIS.Core.Data.Raster.RasterStorageDef();
        storageDef.SetCompressionType(ArcGIS.Core.Data.Raster.RasterCompressionType.JPEG);
        storageDef.SetCompressionQuality(90);
    
        var rv = new ArcGIS.Core.Data.Raster.RasterValue();
        rv.SetRasterDataset(fileRasterDataset);
        rv.SetRasterStorageDef(storageDef);
    
        var sel = MapView.Active.Map.GetSelection();
    
        //insert a raster value object into the raster field
        var insp = new ArcGIS.Desktop.Editing.Attributes.Inspector();
        insp.Load(sel.ToDictionary().Keys.First(), sel.ToDictionary().Values.First());
        insp["Photo"] = rv;
    
        var op = new EditOperation();
        op.Name = "Raster Inspector";
        op.Modify(insp);
        op.Execute();
      }
    });
    Requirements

    Target Platforms: Windows 11, Windows 10, Windows 8.1

    See Also