All Products
Document Center


Last Updated: May 06, 2018

The latest .NET SDK

Environment requirements:

  • Windows

    • .NET Framework 2.0 and above
    • A registered user account on
  • Linux/Mac

    • Mono 3.12 and above

Assembly: Aliyun.OSS.dll

Latest version: 2.4.0

Documentation: Click to view

Package structure:

  • bin
    • Aliyun.OSS.dll .NET assembly file
    • Aliyun.OSS.pdb Debugging and project status information file
    • Aliyun.OSS.xml Assembly comments file
  • doc
    • Aliyun.OSS.chm Help file
  • src
    • SDK source code
  • Sample
    • Sample source code

.NET SDK (14/12/2016)

Download: aliyun_dotnet_sdk_2.4.0


  • Added: SetObjectAcl/GetObjectAcl interfaces
  • Added: Image processing feature
  • Added: OssClient constructor for convenience of use
  • Fixed: High memory use when MemoryStream is used in GetObject
  • Fixed: The 5G limit for ContentLength in ObjectMetadata
  • Fixed: The absence of Proxy-Authorization header in some requests when Proxy is used

.NET SDK (28/03/2016)

Download: aliyun_dotnet_sdk_2.3.0


  • Newly added the ContentMd5 attribute for ObjectMetadata to support MD5 verification during file upload
  • Added verification of target bucket and target object name validity during the copy operation
  • Fixed failure to get Expires from Metadata
  • Fixed the invalid retry mechanism
  • Fixed the exception issue when Content-Encoding and other values are set to null
  • Fixed the error when the endpoint contains a null character at the beginning or end

.NET SDK (12/12/2015)

Download: aliyun_dotnet_sdk_2.2.0


  • Supported Mono 3.12.0 and later versions
  • Added the object append interface: AppendObject
  • Added the resumable upload interface: ResumableUploadObject
  • Added the resumable copy interface: ResumableCopyObject
  • Added some example projects
  • Deleted the dependency on the System.Web library

.NET SDK (28/11/2015)

Download: aliyun_dotnet_sdk_2.1.0


  • Supported .NET Framework 2.0 and .NET Framework 3.5
  • Added the large object copy interface: CopyBigObject
  • Added the large object upload interface: UploadBigObject
  • Added the object metadata modification interface: ModifyObjectMeta
  • Improved the SDK robustness
  • Added the ContentType support for a majority of MIME types (226 types)
  • Completed the missing comments in the SDK API quick reference documentation
  • Deleted the obsolete ObjectMetaData attribute from some classes. Please use the ObjectMetadata attribute of these classes instead

.NET SDK (18/11/2015)


  • Capable of automatically determining the ContentType based on the object key and the suffix of the uploaded file’s name.
  • Added the default EncodingType parameter to the ListObjects, ListMultipartUploads, and DeleteObjects interfaces.
  • Added content MD5 verification to the UploadPart interface.
  • Added some example projects.
  • Simplified the namespace.
  • Merged duplicate directories.
  • Unified directory names.
  • Deleted duplicate test projects.
  • Modified the CNAME support format.
  • When the bucket or object does not exist, DoesObjectExist does not throw an exception but return “false”.

.NET SDK (28/05/2015)

Download: aliyun_dotnet_sdk_20150528


  • Added the support for bucket lifecycle to add and delete lifecycle rules.
  • Added the DoesBucketExist and DoesObjectExist interfaces for determining the existence of a bucket or an object.
  • Added SwitchCredentials to change user account information at run time.
  • Added the ICredentialsProvider interface class to provide a custom policy for generating credentials by implementing the class.
  • Added the GeneratePostPolicy interface to generate Post Policy.
  • Added the asynchronization interface (supporting Put/Get/List/Copy/PartCopy asynchronous operations).
  • Added the STS support.
  • Added the custom time calibration feature. It can be set through the Client configuration item - SetCustomEpochTicks interface.
  • Added the support for Chunked encoding transfer. The Content-Length item can be skipped for the upload.
  • Fixed the bug of getting null results after setting the Expose Header attribute of the bucket CORS.
  • Fixed the bug that the SDK only gets the first prefix when multiple prefixes are contained in the returned CommonPrefixs in an ListObjects request.
  • Fixed the bug of null RequestId and HostId after resolution when an OSS-related exception occurs.
  • Fixed the bug of encoding error due to the Chinese characters in the source key of the CopyObject/CopyPart interface.

.NET SDK (15/01/2015)

Download: aliyun_dotnet_sdk_20150115


  • Removed Table Store branch and renamed the assembly to Aliyun.OSS.dll
  • .NET Framework version upgraded to 4.0 and later
  • OSS: Added Copy Part, Delete Objects, Bucket Referer List and other interfaces
  • OSS: Added the pagination feature of ListBuckets
  • OSS: Added the CNAME support
  • OSS: Fixed the Put/GetObject stream interruption problem
  • OSS: Added samples

.NET SDK (26/06/2014)

Download: aliyun_dotnet_sdk_20140626

Open Services SDK for .NET includes the OSS and Table Store SDKs. The .NET SDK adopted an interface design consistent with the Java SDK and made some improvements based on C#. (The latest version supports multipart uploads to the OSS)


  • Added the CORS feature.

02/09/2013- OSS:

  • Fixed the bug of being unable to throw correct exceptions in some cases.
  • Optimized the SDK performance.

04/06/2013- OSS:

  • Changed the default OSS service access method to a third-level domain name access method.

20/05/2013- Table Store:

  • Changed the default Table Store address to
  • Added the Mono support.
  • Fixed some bugs in the SDK, so that it runs more stably.

10/04/2013- OSS:

  • Added the multipart upload feature for object.
  • Added the copy object feature.
  • Added the feature to generate pre-signed URLs.
  • Isolated the IOSS interface which is inherited by OssClient.

10/10/2012- OSS:

  • Changed the default OSS address to

05/09/2012- OSS:

  • Fixed the invalid parameters such as Prefix for ListObjects.

15/06/2012- OSS:

  • Added the OSS support for the first time. Included basic operations, such as create, modify, read, and delete a bucket, an ACL or an object on the OSS.
  • Table Store:
  • Supported reverse reads of OTSClient.GetRowsByOffset.
  • Added an automatic handling mechanism for errors of specific requests.
  • Added HTML help files.

16/05/2012- Table Store

  • Supported reverse reads of Client.GetRowsByRange.

16/03/2012- Table Store

  • Supported create, modify, and delete operations by access interfaces on tables or table groups, and data insert, modify, delete, and query operations.
  • Added the client access settings, such as proxy and HTTP connection attribute settings.
  • Unified the handling of structural exceptions.