2016-11-21 2 views
-1

을 얻는다. "unit_price", "name"및 "quantity"와는 다른 값을 갖습니다.그래서이 변수가 사전에 개체를 비교하고 가장 낮은 값을 가진

가장 좋은 방법은 내가 가장 낮은 unit_price로 사전을 objekt로 가져 와서 unit_price를 int 변수로 변환하는 것입니다. 나는 이것을 할 수있는 방법이 없다. 나는 시도했지만 절대적으로 아무데도 도울 수 없다.

+0

을 관리? 구현시 어떤 문제점이 있습니까? 또한 왜 이러한 방식으로 데이터를 저장하고 있습니까? 이러한 값을 저장하려면 사전이 아닌 사용자 정의 객체가 있어야합니다. – Servy

+0

당신의 질문은 매우 불분명합니다 ... – obenda

+0

나는 가장 낮은 unit_price를 가진 사전을 찾고 싶습니다. 내가 시도한 것이 그렇게 나빴기 때문에 나는 당신에게 보여줄 것이 없다. 나도 어디서부터 시작 해야할지 모르겠다. –

답변

0

LINQ를 사용하는 것은 매우 쉽습니다. 나는 당신이 int에 unit_prices를 파싱 할 필요가 있다고 가정하고있다. 조심해야한다 : 데이터가 int로 변환 될 수 없다면 이것은 예외를 던질 것이다.

int result = productsInCart.Select(x => int.Parse(x["unit_price"])).Min(); 
1

이 코드는 더 이상이지만, 그것은 당신이 무엇을하려고 않은 빈 컬렉션과 유효 숫자 키

var dict_object = productsInCart.Where(x => int.TryParse($"{x["unit_price"]}", out i)) 
    .OrderBy(x => (int)x["unit_price"]).FirstOrDefault(); 
int u_price = (dict_object != null) ? (int)dict_object["unit_price"] : 0; 
관련 문제