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.
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"));
}
Join the ranks! See a problem? Help fix it!
Made with contrib.rocks.
We are more than happy to have contributions! Please submit a PR.