我正在使用EF和WEB API.我有一个PUT方法,它更新已经在db中的实体.现在我有这个:
// PUT api/fleet/5
public void Put(Fleet fleet)
{
Fleet dbFleet = db.Fleets.Find(fleet.FleetId);
dbFleet.Name = fleet.Name;
dbFleet.xy= fleet.xy;
//and so on....
db.SaveChanges();
}
Run Code Online (Sandbox Code Playgroud)
但我很懒,只想写下这样的东西:
dbFleet.update(fleet);
Run Code Online (Sandbox Code Playgroud)
所以我不必自己更新每个房产.
我确信有一种方法,但我只能找到关于如何使用MVC做到这一点的答案,但不能在使用WEB API而不是接收模型状态时找到答案.
谢谢
我有一个左连接的查询:
var query = (from v in context.Vehicles
//left join vehicleAttributes
join va in context.VehicleAttributes on v.VehicleId equals va.VehicleId into vAttributes
from vehicleAttributes in vAttributes.DefaultIfEmpty()
where v.FleetId == fleetId
select new { v, vehicleAttributes });
Run Code Online (Sandbox Code Playgroud)
现在我需要对它进行分页.
这可行,但获得所有行,比我实际需要的更多
query.ToList().Select(x => x.v).Distinct().Skip(10 * (page - 1)).Take(10).ToList();
Run Code Online (Sandbox Code Playgroud)
这是我试过的,但现在我没有联合价值
query.Select(x => x.v).Distinct().ToList().Skip(10 * (page - 1)).Take(10).ToList();
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
谢谢