Primedice.NET wraps the functionality of the
Primedice API in C#.
The project is written in .NET 4.5 as a portable class library.
Getting startedThe following examples assume that the project has been referenced with the using directive:
Please be advised that all the monetary amounts are in satoshi by default (1 satoshi = 0.00000001 bitcoin).
Registering a new uservar username = "<username>";
// Initialize a new unauthorized instance of PrimediceClient
var client = new PrimediceClient();
// Create a new user
var user = await client.Users.Create(username);
// The following is the most important property of the newly-created user
// Store the value of AuthToken in order to access the created account later
var authToken = user.AuthToken;
Making a bet with an existing uservar serverSeed = "<serverSeed>";
var authToken = "<authToken>";
var amount = 1; // 0.00000001 BTC
var condition = BetCondition.LowerThan;
var target = 49.5;
// Initialize a new authorized instance of PrimediceClient
// (Bet simulation is available by using an unauthorized instance)
var client = new PrimediceClient(authToken);
// Place a new bet with the parameters specified above
var bet = await client.Bets.Create(amount, condition, target);
// Verify the fairness of the bet whether it was lost
if (!bet.IsWon && !bet.Verify(serverSeed)) {
// The roll was not calculated fairly. (This should never happen.)
}
Withdrawing and depositing fundsvar authToken = "<authToken>";
var withdrawalAddress = "<bitcoinAddress>";
var amount = 100000; // 0.001 BTC
// Initialize a new authorized instance of PrimediceClient
var client = new PrimediceClient(authToken);
// Withdraw some amount of money to the withdrawal address specified above
var withdrawal = await client.Wallet.Withdraw(amount, withdrawalAddress);
// Query the deposit address of self
var depositAddress = await client.Wallet.GetDepositAddress();