Не удалось преобразовать тип «WpfA.DataClass.tblGroup» в «WpfA.Group» - PullRequest
0 голосов
/ 05 августа 2011

Таблица состоит из двух столбцов.

columns1 = IdGroup

колонки2 = группа

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
        this.SetData();
    }
    private void SetData()
    {
        using (DataClass.DataClassesAccDataContext DataContext = new DataClass.DataClassesAccDataContext())
        {
            List<Group> myGroup = (Group)DataContext.tblGroup.ToList();
        }
    }
}

public class Group
{
    public string Name { get; set; }
    public string Family { get; set; }
    public bool Selecting { get; set; }
}

ошибка:

Невозможно преобразовать тип 'WpfA.DataClass.tblGroup' в 'WpfA.Group'

enter image description here

1 Ответ

0 голосов
/ 05 августа 2011

A tblGroup, то есть то, что возвращается из вашего запроса LINQ, не является экземпляром Group, поскольку tblGroup не является производным от Group. У вас есть несколько вариантов:

  1. Измените Group на интерфейс, и tblGroup реализует это интерфейс (при условии, что tblGroup имеет все свойства, указанные в Group).
  2. Использование LINQ Select для проецирования объектов группы вместо объекты tblGroup. Однако обратите внимание, что эти объекты группы будут отключен от базы данных - например, если вам нужно сохранить изменения для объектов группы вы должны будете скопировать их обратно в tblGroup объекты.

(Обратите также внимание, что tblGroups.ToList () [0] вернет один элемент, а не список. Поэтому вам, вероятно, следует попытаться назначить его группе, а не List<Group>. Кроме того, если вы хотите только Во-первых, эффективнее использовать оператор LINQ First(), а не ToList()[0], это позволит избежать извлечения нежелательных записей из базы данных.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...