gpt4 book ai didi

c# - 使用 WebApi 和 Entity Framework 6.XX 从数据库中获取表数据

转载 作者:太空宇宙 更新时间:2023-11-03 12:39:35 24 4
gpt4 key购买 nike

我从这样的数据库表中创建了一个实体数据模型。 enter image description here

然后在WebApiConfig.cs中添加4行代码,获取响应中的json数据。

var json = config.Formatters.JsonFormatter;
json.SerializerSettings.PreserveReferencesHandling = Newtonsoft.Json.PreserveReferencesHandling.Objects;
json.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
config.Formatters.Remove(config.Formatters.XmlFormatter);

然后我创建了一个名为 importController 的 Controller (具有读/写操作的 Web API 2 Controller )。

然后我添加了这段代码来从数据库中添加和检索数据。但不工作。

    CodeXenETSEntities db = new CodeXenETSEntities();  

[HttpPost]
[ActionName("pushlocation")]
// POST: api/pushlocation
public HttpResponseMessage pushlocation( int userid,decimal longitude, decimal latitude , TimeSpan time )
{
user_locations ulog = new user_locations();
ulog.user_id = userid;
ulog.lon = longitude;
ulog.lat = latitude;
ulog.time = time;
db.user_locations.Add(ulog);
db.SaveChanges();
return Request.CreateResponse(HttpStatusCode.Accepted, "Successfully Created");
}


[HttpGet]
[ActionName("pulllocation")]
// GET: api/pulllocation/5
public HttpResponseMessage pulllocation(int userid, decimal longitude, decimal latitude, TimeSpan time)
{

db.user_locations.ToList();
return Request.CreateResponse(HttpStatusCode.Accepted, "Success");
}

这是输出: enter image description here

数据库数据:

enter image description here

最佳答案

3 件事:

1)WebApiConfig.cs 中使用 routeTemplate: "api/{controller}/{action}/{id}"

2)importController中将public HttpResponseMessage pulllocation(int userid, decimal longitude, decimal latitude, TimeSpan time) 更改为 public HttpResponseMessage pulllocation()

3) 在浏览器地址栏中使用 http://localhost:57715/api/{controller name}/pulllocation。在你的情况下 http://localhost:57715/api/import/pulllocation

我希望这能解决

关于c# - 使用 WebApi 和 Entity Framework 6.XX 从数据库中获取表数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39519392/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com