为什么我不能从Xamarin Frorms应用发布到.net核心Web API

编程入门 行业动态 更新时间:2024-10-28 02:25:03
本文介绍了为什么我不能从Xamarin Frorms应用发布到核心Web API的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我有一个post方法,可以将json发送到我的api.

I have a post method that sends json to my api.

我的端点在邮递员中工作,所以我的问题出在我的xamarin发布请求中:

My endpoint works in postman so my problem is in my xamarin post request:

async void RegisterUser(object sender, System.EventArgs e) { string URL = "blablahblah:51001/register"; HttpClient client = new HttpClient(); var model = new RegisterViewModel { Email = EntryEmail.Text, FirstName = FirstName.Text, LastName = LastName.Text, Password = EntryPasswrd.Text }; var content = JsonConvert.SerializeObject(model); await client.PostAsync(URL, new StringContent(content)); }

在到达等待客户端之后.PostAsync(URL,new StringContent(content));行,应用程序只是停止死亡.没有错误消息或类似的东西.

after it hits the await client.PostAsync(URL, new StringContent(content)); line, the application just stops dead. no error messages or anything like that.

有什么想法吗?

我在API解决方案中的注册方法:

My register method in my API solution:

[Route("register")] [HttpPost] public async Task<ActionResult> InsertUser([FromBody] RegisterViewModel model) { var user = new IdentityUser { Email = model.Email, UserName = model.Email, SecurityStamp = Guid.NewGuid().ToString() }; var result = await _userManager.CreateAsync(user, model.Password); if (result.Succeeded) { var newUser = new User { Username = model.Email, FirstName = model.FirstName, LastName = model.LastName }; _dbContext.Users.Add(newUser); await _dbContext.SaveChangesAsync(); } return Ok(new { Username = user.UserName }); }

我的视图模型正在通过以下方式传递数据:

and my view model i am passing the data through:

public class RegisterViewModel { [Required] [EmailAddress] public string Email { get; set; } [Required] public string FirstName { get; set; } [Required] public string LastName { get; set; } [Required] public string Password { get; set; } }

此后,我使用以下建议重写了post方法,但仍未在catch块内返回任何错误:

I have since rewrote my post method using the below suggestions, its still not returning any errors inside my catch block:

public async Task<string> Registered(object details) { string URL = "blahblah:51001/register"; HttpClient client = new HttpClient(); var model = new RegisterViewModel { Email = EntryEmail.Text, FirstName = FirstName.Text, LastName = LastName.Text, Password = EntryPasswrd.Text }; var content = JsonConvert.SerializeObject(model); try { await client.PostAsync(URL, new StringContent(content)); } catch (Exception ex) { throw new Exception(ex.Message); } return "Registration Successful"; }

推荐答案

因此,在谷歌搜索2天后,我找到了解决方案:

So after 2 days of googling i found a solution:

marketplace.visualstudio/items ?itemName = vs-publisher-1448185.ConveyorbyKeyoti#overview

现在我可以从我的xamarin表单项目发布到我的api了!

now I can post to my api from my xamarin forms project!!!

感谢大家的投入

更多推荐

为什么我不能从Xamarin Frorms应用发布到.net核心Web API

本文发布于:2023-11-17 15:35:52,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1610266.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:核心   Frorms   Xamarin   net   API

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!