ASP.NET linq选择多个连接
发布时间:2020-12-16 07:02:01 所属栏目:asp.Net 来源:网络整理
导读:我首先从EF代码获得这个数据库,现在我很难获得我的数据. 我有以下实体: 程序:是一个包含锻炼的锻炼计划. 锻炼:是一个包含集合列表的日常规. Set:是一个练习,在y加载时重复x次. 运动:是一个包含地区的健身运动. 地区:是人体上的一个区域,包含肌肉. 肌肉
我首先从EF代码获得这个数据库,现在我很难获得我的数据.
我有以下实体: 程序:是一个包含锻炼的锻炼计划. 锻炼:是一个包含集合列表的日常规. Set:是一个练习,在y加载时重复x次. 运动:是一个包含地区的健身运动. 地区:是人体上的一个区域,包含肌肉. 肌肉:是人体的肌肉. 模型示例 这是3个模型示例 public class Workout { [Key] public int WorkoutId { get; set; } public string Name { get; set; } public string Description { get; set; } public virtual ICollection<Set> Sets { get; set; } } public class Set { [Key] public int SetId { get; set; } //Foreign key for Exercise public int ExerciseId { get; set; } [ForeignKey("ExerciseId")] public Exercise Exercise { get; set; } public decimal Load { get; set; } public decimal Order { get; set; } } public class Exercise { [Key] public int ExerciseId { get; set; } public string Name { get; set; } public string Description { get; set; } //Foreign key for Region public int RegionId { get; set; } public Region Region { get; set; } } 和脚手架控制器 // GET: api/Workouts public IQueryable<Workout> GetWorkouts() { return db.Workouts; } 所以这只给了我一个带有iCollection集的Workout对象为null. // GET: api/Workouts public IQueryable<Workout> GetWorkouts() { return db.Workouts.Include(w => w.Sets); } 通过包含集我可以得到相应的集. 但是如果我想得到一个锻炼,包括集合,那些集合将包括练习,那些练习将包括最终有肌肉列表的区域? 如果我想从id锻炼,如下所示: [ResponseType(typeof(Workout))] public IHttpActionResult GetWorkout(int id) { Workout workout = db.Workouts.Find(id); if (workout == null) { return NotFound(); } return Ok(workout); } 那我怎么会包括套装? 编辑 GET api/Workouts/{id} 应该提供医疗: { "workoutId": 1,"name": "sample string 2","description": "sample string 3","sets": [ { "setId": 1,"exercise": { "exerciseId": 1,"regionId": 4,"region": { "regionId": 1,"regionName": "sample string 2","muscles": [ { "muscleId": 1,"latinName": "sample string 2","dkName": "sample string 3","enName": "sample string 4","description": "sample string 5" },{ "muscleId": 1,"description": "sample string 5" } ] } }, 但它只是不会发生,我打开任何让我返回JSON完整程序的东西. skype,teamwievr,堆栈,另一种解决方案,anyhting. 解决方法
最后我明白了:
public class Exercise { [Key] public int ExerciseId { get; set; } public string Name { get; set; } public string Description { get; set; } //Foreign key for Region //public int RegionId { get; set; } public virtual Region Region { get; set; } //had to be virtual -.- } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 在Asp.Net MVC 2中有一种更好的方法来返回4
- asp.net-mvc – IIS 8.5 – 应用程序初始化无效
- 从ASP.NET IIS运行时,Powershell启动作业,等待作业,主机线程
- asp.net-mvc – 在不同的服务器上将ASP.NET Web API应用程序
- asp.net-mvc – 范围注释在无和100之间?
- asp.net mvc errorhandler没有显示自定义错误页面
- asp.net – 为什么HttpContext.Current.User.Identity.Name
- 在asp.net中设置图像到期日期
- ASP.NET如何渲染控件到HTML?
- asp.net – ScriptManager的EnablePartialRendering属性究竟
推荐文章
站长推荐
- asp.net – 我应该使用哪个PreApplicationStartM
- 如何在ASP.NET Web应用程序中打开一个SectionGro
- asp.net – 如何在Repeater中查找控件
- asp.net-mvc – 如何使用MSBuild部署一个ASP.NET
- asp.net-mvc – MVC4 Razor – @ Html.DisplayFo
- asp.net-mvc – 我可以从子部分视图访问父视图的
- asp.net-mvc – 在ASP.NET MVC站点上集成PayPal的
- asp.net – 保护ELMAH,同时可以通过RSS阅读器访问
- asp.net – 将DetailsView行组合在一起?
- asp.net – monodevelop可以像没有VS2010一样进行
热点阅读