Генерация сущностей в отдельной папке - PullRequest
0 голосов
/ 05 сентября 2010

Как вы можете видеть на изображении

http://i51.tinypic.com/xoe14j.jpg

У меня есть сервер папок с библиотекой классов VDB.Data.В этой библиотеке классов у меня есть мой VDB EDMX.Но я не хочу, чтобы мои сгенерированные сущности находились в другой папке.Они должны входить в общую папку в VDB.Common.Model -> Entities -> Generated

. В edmx находятся Customer, Order, Orderdetails. Тогда под сгенерированным файлом должен быть VDBEntities.tt с нижнимследующие лица Клиент, заказ, заказ детали

Но как мне это сделать?Я могу сделать это только в библиотеке VDB.Data. Кто-нибудь, кто может мне помочь?

1 Ответ

1 голос
/ 06 сентября 2010

Вы не можете и не хотите помещать сущности в отдельные файлы. Вы не должны изменять сгенерированные файлы.

Все сущности реализованы как partial классы фреймворком. Это означает, что вы можете расширить код в отдельный файл.

Например, если вы хотите добавить вычисляемое свойство в класс Customer, создайте файл Customer.cs в выбранной вами папке и объявите его с помощью ключевое слово partial:

public partial class Customer
{
    public int CalculatedTotalOrders
    {
        get { return this.Orders.Sum(o => o.Total); }
    }
}

Хотя вы объявили только одно свойство в этом файле , вы можете получить доступ к любому из свойств класса; объявление просто распределяется между несколькими файлами - в этом случае один сгенерированный файл (который вы не трогаете) и один файл вашего создания.

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