【发布时间】:2020-12-10 19:08:27
【问题描述】:
我是 C# 和 .Net 的新手,我很难理解我遇到的这个问题。我觉得我所拥有的已经足够了,但我自己不确定。所以如果有人可以查看我下面的代码并告诉我要纠正什么是错的。谢谢
这是我的模型类
namespace github_project.Models
{
public class GithubItem
{
public int Id { get; set; }
public string UserName { get; set; }
public string FullName { get; set; }
public string City { get; set; }
public string ProjectName { get; set; }
public string Commits { get; set; }
public double Rating { get; set; }
public string AvatarUrl { get; set; }
}
}
这是我的数据库上下文
namespace github_project.Database
{
public class GithubContext : DbContext
{
public DbSet<GithubItem> Github { get; set; }
public GithubContext(DbContextOptions<GithubContext> options) : base(options)
{
}
public GithubItem ItemsList()
{
List<GithubItem> build = Build();
GithubItem itemsList = JsonConvert.DeserializeObject<GithubItem>(build);
return itemsList;
}
public List<GithubItem> Build()
{
var getData = GetGithubData();
return System.Text.Json.JsonSerializer.Deserialize<List<GithubItem>>(getData);
}
private string GetGithubData()
{
string username = "**test**";
var url = "https://api.github.com/users/" + username + "/repos?page=1";
HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
request.Method = "GET";
request.ContentType = "application/json";
request.UserAgent = "TestApp";
using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
{
StreamReader reader = new StreamReader(response.GetResponseStream());
return reader.ReadToEnd();
}
}
public List<GithubItem> getGithub() => Github.Local.ToList<GithubItem>();
}
}
这终于是我的控制器了
[HttpGet("/github")]
public GithubItem GetAll()
{
return _context.ItemsList();
}
我正在向 github 发出请求,以获取所有数据并在我的请求中使用它。我在这里得到一个将 Collection.List 转换为 String 的方法如下:
public GithubItem ItemsList()
{
List<GithubItem> build = Build();
GithubItem itemsList = JsonConvert.DeserializeObject<GithubItem>(**build**);
return itemsList;
}
有人可以帮助我,有人可以告诉我这里出了什么问题吗???谢谢
【问题讨论】:
标签: c# asp.net-mvc xmlhttprequest rest