질문 내가 할 수있는 다음과 같은 값을 포함하는 일반 목록이은 LINQ에 의해 일반적인 목록에서 값을 사용하여 문자열을 포맷
업데이트 :
Sector 1
Sector 2
Sector 4
또는 다음 값 :
All Sectors
을
이 값을 다음과 같은 문자열 형식으로 지정하고 싶습니다.
Sector 1 & 2 & 4 -
또는
All Sectors -
현재, 나는 같은 형식으로 다음과 같은 코드가 있습니다. 그것은 작동하지만 매우 복잡합니다.
string retrieveSectors += sectors.Count == 0
? string.Empty
: sectors.OrderBy(
y =>
y.Sector.Substring(
y.Sector.Length - 1, 1)).
GroupBy(g => g.Sector).Select(
g => g.First()).ToList().Aggregate(
retrieveSectors,
(current, y) =>
(current == retrieveSectors
? current +
y.Sector
: current + " & " +
y.Sector.
Substring(
y.Sector.
Length - 1, 1))) + " - "
위의 코드에서 변수 섹터는 제네릭 목록입니다. 누군가가 결과를 단순화 된 방법으로 얻을 수 있도록 도와 줄 수 있습니까? 또는 더 이해할 수 있도록 위의 코드를 수정할 수도 있습니다.
도움을 주시면 감사하겠습니다. 감사합니다
얼마나 많은 섹터가 존재합니까 ??? – renatoargh
위의 업데이트 된 질문에서 언급했습니다. 목록에는 "모든 섹터"또는 "섹터 1, 섹터 2, 섹터 4"가 포함될 수도 있고 비어있을 수도 있습니다. 세 가지 시나리오 모두에 대한 솔루션이 필요합니다. 업데이트 된 질문을 확인하십시오 – reggie
확실한 답을 얻었습니다. 아래를보십시오! – renatoargh