Пользовательские классы LinqToSql, полученные из нескольких таблиц базы данных - PullRequest
1 голос
/ 22 ноября 2010

в моей базе данных у меня есть две таблицы, которые связаны между собой.Давайте назовем их Job, а JobType Job имеет внешний ключ jobTypeID, который ссылается на JobType.

Я хотел бы создать собственный класс в dbml со свойствами из обеих таблиц БД ... по существу, со всеми свойствами Job и свойством JobTypeName из JobType

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

В конечном счете мне нужен класс linqtosql с соответствующими свойствами для передачи парсеру, который обрабатывает подкачку, сортировку и т. д. для сетки данных на стороне клиента...

Если это поможет мне направить меня в лучшем направлении, парсер использует IQueryable с универсальным типом ... типом является класс linqtosql, который содержит данные, которые будут отображаться в таблице.

Ответы [ 2 ]

1 голос
/ 22 ноября 2010

, поскольку все ваши таблицы получили отношения и успешно перенесены в DBML, тогда да, вы можете сделать это

, в основном, создать частичный класс для вас класс Job (частичный класс для ссылки на класс Job, созданный Linq Designer)и поместите в него свойство, которое возвращает JobTypeName из ссылочной таблицы

, например:

namespace ConsoleApplication1
{
    /// <summary>
    /// Partial class for job class created by LINQ Desinger
    /// </summary>
    public partial class Job
    {
        /// <summary>
        /// Property to return the JobTypeName for this Job
        /// </summary>
        public string JobTypeName
        {
            get
            {
                if (JobType != null)
                    return this.JobType.JobTypeName;
                return string.Empty;
            }
        }
    }
}

Надеюсь, это помогло.

0 голосов
/ 22 ноября 2010

Ну, я заставил это работать, но не так, как я представлял себе изначально ...

Мне удалось создать представление в БД, чтобы вернуть необходимые столбцы, затем отобразить представление в класс linqtosql.

На данный момент производительность вроде бы нормальная.

Я предполагаю, что правильным подходом было бы изучение структуры сущностей ado.net для будущих проектов

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