Возможно, я неправильно понимаю, но в вашей модели вы можете right-click
> Update Model from Database
. На вкладке Add
просто выберите все хранимые процедуры, которые вы хотите добавить в модель.
Не так, как я знаю. Смысл Entity Framework состоит в том, чтобы не создавать ваши сущности вручную (генерация кода). Вы сначала создаете базу данных и копируете в модель, либо сначала создаете модель и генерируете таблицы базы данных. В любом случае фактические сущности .NET создаются автоматически. Если вы позже измените свою модель, сущности будут заново сгенерированы. Если бы вы могли импортировать свои собственные ранее существующие объекты, вы рискуете перезаписать их при изменении вашей модели. Они также будут вне контроля модели (как обращаться, если они находятся в отдельных сборках и т. Д.?). С частичными объектами (подробнее об этом на # 3) вы можете расширять сгенерированные классы, не рискуя переписать ваши настройки. Вы по-прежнему можете использовать существующие классы как DTO , но тогда вам придется вручную преобразовывать сгенерированную EF сущность в ваш объект DTO.
Нельзя привести базовый класс к производному классу. См .: Способ приведения базового типа к производному типу
Я не уверен насчет .NET 3.5 (EF 1), но сущности / сложные типы в .NET 4 (EF 2) являются частичными классами. Это означает, что вы можете добавлять членов, просто расширяя класс. Так, например, если ваш пользовательский тип был:
public partial class Address
{
public string Address1 { get; set; }
public string Address2 { get; set; }
public string City { get; set; }
public string State { get; set; }
public string Zip { get; set; }
}
Вы можете создать новый файл с:
public partial class Address
{
public string MyProperty { get; set;}
}
Тогда сделайте new Address { Address1 = "abc", MyProperty = "def" };
. Они оба должны быть в одной сборке и в одном пространстве имен.