Получить все удаленные записи - PullRequest
0 голосов
/ 30 мая 2009

Я ищу способ получить все записи, где deleted установлено на true для конкретной таблицы. Как мне это сделать?

Примечание. Использование автоматически сгенерированного класса SubSonic. Не T-SQL.

Ответы [ 3 ]

2 голосов
/ 30 мая 2009

Автоматически сгенерированные классы SubSonic не поддерживают запросы на логическое удаление. Но вы можете сделать это (синтаксис версии 2.1 / 2.2):

public partial class TableClassCollection
{

    public TableClassCollection LoadAll(bool suppressLogicalDeletes)
    {

          SubSonic.SqlQuery q = new SubSonic.Select(TableClass.Schema)
              .From(TableClass.Schema);

          if (suppressLogicalDeletes)
          {
              q.Where(TableClass.DeletedColumn).IsEqualTo(false);
          }

          return q.ExecuteAsCollection<TableClassCollection>();
      }

}

Больше примеров на subsonicproject.com

2 голосов
/ 30 мая 2009

Я никогда раньше не слышал о SubSonic, но появился быстрый поиск в Google: Выбор запросов в SubSonic .

Итак, используя эту страницу в качестве руководства, вы можете написать свой запрос как:

FooCollection deletedFoos = // use the generated collection class
    DB.Select().From("FooTable") // table name goes here
        .Where("deleted").IsEqualTo(true) // might need 1, depends on database?
        .ExecuteAsCollection<FooCollection>(); // should match the type above
0 голосов
/ 30 мая 2009

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

select * from tableName where deleted = true
...