C#にてMVCモデルを利用してユーザー認証を行うシステムを開発しようとしています。
MVCモデルを利用してのコーディング自体初、私自身も今年からIT業界に参入し、勉強しながら作成しており、試しにテスト形式でコーディングしてみたのですが、
どうもうまくいかなく非常に困っている状態です。
クライアント側から渡されるaccountとpasswordを
コントローラーのGet()で受け取り、指定文字と同じであればUserModelのResultに1を入れるといった処理になっています。
現状デバッグ操作を行うと、コントローラー側のGet処理が終わり、Resultに1が入った状態で
値を返しているように見えるのですが、responseに値が返ってこない。
といった状態です。
Taskのawaitで処理が終わるのを待っているのか、、、responseに値が返ってこない理由が全く分からに状況です。
IT新人、調べながらのコーディングということもあり、至らないコーディングではあるかと思いますが、何か解決策等ありましたらご教授願います。
情報が不足等していた場合は追記しますのでよろしくお願いします。
VisualStudi2019,.NET Core3.0, Windows10
C#
1public async void Authenticate(string account, string password) 2 { 3 using (var client = new HttpClient()) // <- 本当はHttpClientをusingで使っちゃダメ 4 { 5 var response = await client.GetAsync(@"https://localhost:44358/User?account=" + account + "&password=" + password); 6 } 7 }
C#
1[ApiController] 2 [Route("[controller]")] 3 public class UserController : Controller 4 { 5 [HttpGet] 6 public UserModel Get() 7 { 8 string account = HttpContext.Request.Query["account"].ToString(); 9 string password = HttpContext.Request.Query["password"].ToString(); 10 UserModel user = new UserModel(); 11 12 // -------------------------------------------------------------------------------- 13 // 指定されたアカウントとパスワードを用いて、ログインを判断 14 // -------------------------------------------------------------------------------- 15 if (account.Contains("ABC") && password.Equals("123456789")) 16 { 17 user.Account = account; 18 user.Password = password; 19 user.Result = 1; 20 return user; 21 22 } 23 else 24 { 25 user.Account = account; 26 user.Password = password; 27 user.Result = 1; 28 return user; 29 30 } 31 32 } 33 }
回答2件
あなたの回答
tips
プレビュー