Simple.Data Lazy Ошибка загрузки - PullRequest
0 голосов
/ 01 февраля 2012

Я играл с Simple.Data и наткнулся на то, чего не могу понять.

В моих данных у меня есть три таблицы: Hotel, Project и ProjectMilestone. Отель может иметь несколько проектов, а проект может иметь несколько этапов проекта. Я использую SQL Server, и таблицы связаны внешними ключами стандартным способом.

При использовании Simple.Data следующий код не будет работать:

var db = Database.Open();
var hotels = db.Hotel.All().Take(100);

foreach (var hotel in hotels)
{
    foreach (var project in hotel.Project)
    {
        foreach (var projectMilestone in project.ProjectMilestone)
        {
            //Do something here
        }
    }
}

Выдает ошибку, которая говорит:

'Simple.Data.SimpleRecord' не содержит определения для 'Project'

Однако следующий код работает:

var db = Database.Open();
var hotel = db.Hotel.FindByHotelID(1);

foreach (var project in hotel.Project)
{
    foreach (var projectMilestone in project.ProjectMilestone)
    {
        //Do something here
    }
}

Я совсем не понимаю этого. Мне кажется, что если второй работает, то первый должен также. Является ли коллекция, возвращаемая All (). Take (100), не коллекцией того же, что возвращает FindByHotelID (1)? Просматривая типы, кажется, что они должны быть.

Кто-нибудь видел это раньше?

1 Ответ

2 голосов
/ 02 февраля 2012

Это ошибка в Simple.Data.Это исправлено в 0.14.0.3, в Nuget сейчас.

...