GitHub - supabase-community/storage-csharp: A C# implementation of Supabase's Object Storage API (original) (raw)

Integrate your Supabase projects with C#.

[Notice]: v2.0.0 renames this package from storage-csharp to Supabase.Storage. The depreciation notice has been set in NuGet. The API remains the same.

Examples (using supabase-csharp)

public async void Main() { // Make sure you set these (or similar) var url = Environment.GetEnvironmentVariable("SUPABASE_URL"); var key = Environment.GetEnvironmentVariable("SUPABASE_KEY");

await Supabase.Client.InitializeAsync(url, key);

// The Supabase Instance can be accessed at any time using: // Supabase.Client.Instance {.Realtime|.Auth|etc.} // For ease of readability we'll use this: var instance = Supabase.Client.Instance;

// Interact with Supabase Storage var storage = Supabase.Client.Instance.Storage await storage.CreateBucket("testing")

var bucket = storage.From("testing");

var basePath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().CodeBase).Replace("file:", ""); var imagePath = Path.Combine(basePath, "Assets", "supabase-csharp.png");

await bucket.Upload(imagePath, "supabase-csharp.png");

// If bucket is public, get url bucket.GetPublicUrl("supabase-csharp.png");

// If bucket is private, generate url await bucket.CreateSignedUrl("supabase-csharp.png", 3600));

// Download it! await bucket.Download("supabase-csharp.png", Path.Combine(basePath, "testing-download.png")); }

Package made possible through the efforts of:

Join the ranks! See a problem? Help fix it!

Made with contrib.rocks.

Contributing

We are more than happy to have contributions! Please submit a PR.