Account.razor.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using System;
  2. using System.Threading.Tasks;
  3. using Microsoft.AspNetCore.Identity;
  4. using HyperCube.Models;
  5. namespace HyperCube.Pages
  6. {
  7. public partial class Account
  8. {
  9. private AccountModel account = new();
  10. string myBalance = "";
  11. protected override async Task OnInitializedAsync()
  12. {
  13. account = await GetCurrentAcc();
  14. if (Blockchain.GetMain() != null)
  15. myBalance = await account.GetBalance();
  16. }
  17. private async Task<AccountModel> GetCurrentAcc()
  18. {
  19. AccountModel account = new();
  20. var authState = await AuthenticationStateProvider.GetAuthenticationStateAsync();
  21. var user = authState.User;
  22. if (user.Identity.IsAuthenticated)
  23. {
  24. var currentUser = await UserManager.GetUserAsync(user);
  25. var acc = AccountModel.Find(currentUser.Id);
  26. if (acc != null)
  27. account = acc;
  28. //account.AccRole = Role.User;
  29. return account;
  30. }
  31. return null;
  32. }
  33. }
  34. }