2014-10-16 5 views
0

키에 여러 값 (배열)을 넣으려고하지만이 작업을 수행하는 방법을 모르겠습니다.
나는 시도했다 : 나는이 잘못 알고JSON을 사용하여 하나의 키에 여러 값 저장

public class Customer 
{ 
    public string Name { get; set; } 
    public string Bought[5] { get; set; } 
} 

List<Customer> Products = new List<Customer>(); 

Customer product = new Customer(); 
product.Bought[0] = listproducts.SelectedIndex; 
product.Bought[1] = listproducts.SelectedIndex; 
product.Bought[3] = listproducts.SelectedIndex; 
product.Bought[4] = listproducts.SelectedIndex; 
product.Bought[5] = listproducts.SelectedIndex; 

,하지만 난 할 노력하고있어에 대한 빈약 한 예입니다.
나는이 방법으로 뭔가를 시도하고 있었다 :
Store multiple values in single key in json
그러나 나는 C#에 적응하는 방법을 모른다.
난 그냥 같은 JSON 파일 무언가에 저장해야합니다

[{"Name":"Bryan", "Products":"car", "boat", "bike"}] 

누군가가 나를 도울 수있는 경우

, 내가 감사 할 것입니다. 지식을 향한이 단계를 더 제공 할 것입니다.

답변

0

Bought에는 List<string> 또는 List<BoughtObject>을 사용해야합니다. 당신은 그냥 하나의 문자열 쉼표로 구분 (다음 클라이언트 측에서 그것을 분할하거나처럼 표시되게하려면

{ // Customer 
    Name : "Bryan", 
    Bought: [// Array of your bought objects 
     { ... }, 
     { ... } 
     ] 
} 

을 생성합니다

"보트, 제트, TV"당신은 그것을 떠날 수 문자열의 유형으로 다음 않는 .Join(boughtItems)

+0

나는 이것을 실제로하는 방법을 모른다. 예를 들어 텍스트 상자에서 하나의 제품 만 추가하려면 product.Bought = textboxProductName.Text 및 Products.Add (제품)를 사용합니다. 이것은 잘 작동하고 키에 하나의 제품을 추가합니다. 그러나 예를 들어 하나의 확인란을 사용하여 선택한 제품을 추가하고 "추가"버튼을 클릭하는 방법을 배우고 싶습니다. 자전거의 해당 확인란, 자동차의 확인란, TV의 확인란 등이있는 경우 확인란을 선택하면 현재 고객의 제품 키로 값이 이동합니다. 같은 키에 쉼표로 구분하여 추가하는 방법이 궁금합니다. – Hypister

0

당신은 Dictionary<Type1, List<type2> > 같은 것을 사용할 수 있습니다. 귀하의 경우에는 당신이 Dictionary<string, List<string> >을 할 수 있습니다. 키에 대한 여러 값을 저장할 당신은 할 수 그 방법을.

0

될 수도로 시도 그것 will will work

    public class Customer 
        { 
        public string Name { get; set; } 
        public readonly string[] Bought = new string[5]; 
        } 
관련 문제