WPF DataGrid Entity Framework: возможно ли связать столбец таблицы данных с методом / функцией? - PullRequest
0 голосов
/ 18 мая 2010

Мне интересно, можно ли привязать столбец сетки (поле) к методу или функции объекта?

Например, у меня есть две сущности Person и Company, которые обе наследуют абстрактную сущность Адресат. В моей таблице я перечисляю всех адресатов (как физических лиц, так и компаний). У меня есть столбец Name в сетке данных, который я хочу привязать к функции GetName (). Эта функция является частью юридического лица-получателя и в зависимости от типа получателя возвращает CompanyName (если компания) или FirstName + '' + LastName (если персона).

Я также пытался добавить частичный класс Adressee со свойством Name, которое выполняет ту же функцию, что и описанная выше функция, но не удается при сохранении в базу данных, поскольку столбец Name не существует в базе данных.

Кто-нибудь может мне помочь? : -)

1 Ответ

1 голос
/ 18 мая 2010

Так родился ViewModel . Вы не должны изменять свою модель в соответствии с вашим видом. Вместо этого создайте класс, который будет

  • раскрыть свойство модели, необходимое для представления
  • содержит другие производные свойства.

public class AddresseeViewModel
{    
    private readonly Addressee addressee; //Your Model
    public string FirstName //Your FirstName Property
    {
        get
        {
            return addressee.FirstName;
        }
        set
        {
            addressee.FirstName = value;
            OnPropertyChanged("FirstName");
        }
    }
    public string Name
    {
        // Add your Name Property Logic
    }
}
...