Skip to content

Files

Latest commit

author
Christopher McClister
Mar 15, 2022
220a43e · Mar 15, 2022

History

History
109 lines (71 loc) · 4.66 KB

functions-bindings-blob-storage-usage-csharp.md

File metadata and controls

109 lines (71 loc) · 4.66 KB
author ms.service ms.topic ms.date ms.author
ggailey777
azure-functions
include
12/02/2021
glenga

An in-process class library is a compiled C# function runs in the same process as the Functions runtime.

An isolated process class library compiled C# function runs in a process isolated from the runtime. Isolated process is required to support C# functions running on .NET 5.0.

C# script is used primarily when creating C# functions in the Azure portal.


Choose a version to see usage details for the mode and version.

The following parameter types are supported for all versions:

  • Stream
  • TextReader
  • string
  • Byte[]

The following parameter types are extension version-specific and require FileAccess.ReadWrite in your C# class library:

For examples using these types, see the GitHub repository for the extension. Learn more about these new types are different and how to migrate to them from the Azure.Storage.Blobs Migration Guide.

[!INCLUDE functions-bindings-blob-storage-attribute]

The following parameter types are supported for all versions:

  • Stream
  • TextReader
  • string
  • Byte[]

The following parameter types are extension version-specific and require FileAccess.ReadWrite in your C# class library:

[!INCLUDE functions-bindings-blob-storage-attribute]

Isolated process currently only supports binding to string parameters.

Isolated process currently only supports binding to string parameters.

The following parameter types are supported for all versions:

  • Stream
  • TextReader
  • string
  • Byte[]

The following parameter types require you to set inout for direction in the function.json file.

The following parameter types are supported for all versions:

  • Stream
  • TextReader
  • string
  • Byte[]

The following parameter types are extension version-specific and require you to set inout for direction in the function.json file.


Binding to string, or Byte[] is only recommended when the blob size is small. This is recommended because the entire blob contents are loaded into memory. For most blobs, use a Stream or CloudBlockBlob type. For more information, see Concurrency and memory usage.

If you get an error message when trying to bind to one of the Storage SDK types, make sure that you have a reference to the correct Storage SDK version.