[英]How to remove list object from an item in List?
I have a class:我有一个 class:
public class FlightDetails
{
public string FlightId {get; set;}
public string PilotName {get; set;}
public string Area {get; set;}
public string Country {get; set;}
}
Here sending response:这里发送响应:
public async Task<List<FlightDetails>> GetFlightAsync(string FlightId)
{
//
var flights = new List<FlightDetails>();
flights = response.AllFlights;
flights = flights.Where(x => x.FlightId.Contains(FlightId)).ToList();
//
return flights;
}
Getting List
here and data is filled but issue is don't want FlightId
and Country
in the response which I am sending.在此处获取
List
并填充数据,但问题是不希望FlightId
和Country
在我发送的响应中。 How to remove this objects in the List
?如何删除
List
中的这些对象? Finally in the List
item there should be only PilotName
and Area
.最后在
List
项中应该只有PilotName
和Area
。
Update:更新:
I forgot the following line before the flights = response.AllFlights;
我在
flights = response.AllFlights;
之前忘记了以下行: :
var request = await _rest.Get<WorldFlights>(url + $"?FlightId={FlightId}");
You will need to create another object, and map there only the properties you want.您将需要创建另一个 object 和 map 那里只有您想要的属性。 For example:
例如:
public class FlightDetailsResponse
{
public string PilotName {get; set;}
public string Area {get; set;}
}
And then in the function:然后在 function 中:
public async Task<List<FlightDetailsResponse>> GetFlightAsync(string FlightId){
var flights = response.AllFlights;
var flightResponses = flights
.Where(x => x.FlightId.Contains(FlightId).ToList())
.Select(x => new FlightDetailsResponse{
PilotName = x.PilotName,
Area = x.Area
});
return flightResponses;
}
This way the response will only contain the PilotName
and Area
fields.这样,响应将仅包含
PilotName
和Area
字段。
PD: What I wrote might not compile because of missing commas or something like that. PD:由于缺少逗号或类似的东西,我写的内容可能无法编译。 Sorry, it has been some time since I last wrote C#, but the idea is that.
抱歉,距离我上次写 C# 已经有一段时间了,但想法是这样的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.