Как создать Entity Data Model для унаследованных универсальных типов? - PullRequest
2 голосов
/ 09 октября 2009

Я понятия не имею, как я могу получить существующую структуру объекта, основанную на следующих классах (упрощенно), в базе данных, используя Entity Framework (EF - это ограничение, я должен его использовать).

public abstract class WahWahProperty
{
  public string Name { get; set; }
  public abstract Type PropertyType { get; }
}

// ----------------

public class WahWahProperty<T> : WahWahProperty
{
  public T Value { get; set; }

  public override Type PropertyType
  {
    get { return typeof(T); }
  }
}

// ----------------

public class WahWahContainer
{
  public List<WahWahContainer> Children { get {...}; }
  public List<WahWahContainer> Parents { get {...}; } // multiple "Parents" allowed
  public List<WahWahProperty> Properties { get {...}; }
  //... some more props here ...
}

Есть идеи?

1 Ответ

2 голосов
/ 09 октября 2009

EF не поддерживает универсальные типы сущностей (что похоже на то, что вы делаете).

Несмотря на то, что мы внесли изменения в EF 4.0 (не в Beta1), вы сможете использовать не универсальный класс, производный от универсального класса, в качестве сущности.

В любом случае, надеюсь, это поможет

Alex

Руководитель программы Entity Framework Team

Советы Entity Framework

...