static async void Main()
{
// New BigML client with username and API key
Console.Write("user: "******"key: "); var ApiKey = Console.ReadLine();
// set true the development mode
var client = new Client(User, ApiKey, true);
// create a source
var remoteURL = @"azure://csv/iris.csv?AccountName=bigmlpublic";
Source.Arguments remoteArguments = new Source.Arguments();
remoteArguments.Add("remote", remoteURL);
var sourceFromAzure = await client.Create(remoteArguments);
while ((sourceFromAzure = await client.Get(sourceFromAzure)).StatusMessage.NotSuccessOrFail()) await Task.Delay(10);
Console.WriteLine(sourceFromAzure.StatusMessage.ToString());
var dataset = await client.Create(sourceFromAzure);
// No push, so we need to busy wait for the dataset to be processed.
while ((dataset = await client.Get(dataset)).StatusMessage.NotSuccessOrFail()) await Task.Delay(10);
Console.WriteLine(dataset.StatusMessage.ToString());
// Customized cluster from dataset. 3 is the desired number of cluster. Sets cluster name: "my cluster"
var cluster = await client.CreateCluster(dataset, "my cluster", 3);
while ((cluster = await client.Get(cluster)).StatusMessage.NotSuccessOrFail()) await Task.Delay(10);
Console.WriteLine(cluster.StatusMessage.ToString());
}