Работа интерфейса IEnumerable и ошибка преобразования типов - C#
Формулировка задачи:
у меня есть клас:
заполняю его так:
хочу его виводить вот так:
и видает ошибку:
Листинг программы
- class DAD2
- {
- public string name { get; set; }
- public int code { get; set; }
- public double size { get; set; }
- public double price { get; set; }
- public DAD2(){}
- public DAD2(string name, int code, double size, double price)
- {
- this.name=name;
- this.code=code;
- this.size=size;
- this.price=price;
- }
- }
Листинг программы
- DAD2[] p = { new SON2("Арка", 1100, 144.5, 150),new SON2("Стіл", 1100, 77.7, 450),
- new SON2("Підлога", 1102, 10, 550),new SON2("Вікно", 1100, 714.9, 350),
- new SON2("Атеро", 1100, 74.9, 50)};
Листинг программы
- foreach(DAD2 p3 in p)
- dataGrid3.ItemsSource = p3;
Ошибка 1 Не удается неявно преобразовать тип "lab_3.SON2" в "System.Collections.IEnumerable". Существует явное преобразование (возможно, пропущено приведение типов) D:\РОМАН\5-курс\edisk_files\Lab_Kovalchuk\Готові лаби\lab_№3\lab_3\lab_3\Window2.xaml.cs 38 41 lab_3
как мне исправить? я знаю надо переопределить методpublic IEnumerator GetEnumerator() но мне не работает((( помогите плиз...Решение задачи: «Работа интерфейса IEnumerable и ошибка преобразования типов»
textual
Листинг программы
- using System;
- using System.Collections;
- using System.Collections.Generic;
- namespace IEnumirableT
- {
- internal class MyClass : IEnumerable<int>
- {
- private int[] _x;
- public MyClass(int length)
- {
- _x = new int[length];
- }
- public IEnumerator<int> GetEnumerator()
- {
- for (int i = 0; i < _x.Length; i++)
- yield return _x[i];
- }
- IEnumerator IEnumerable.GetEnumerator()
- {
- return GetEnumerator();
- }
- }
- internal class Program
- {
- private static void Main()
- {
- MyClass m = new MyClass(10);
- foreach (int i in m)
- Console.WriteLine(i);
- Console.ReadKey();
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д