, что это возможно:
// Will return a Storage instance with property IsNew = true, if record does not exist
// since an object created with new never can be null
var storage1 = new Storage(1); // id = 1
var storage1 = new Storage(Storag.Columns.ColumnName, "value");
// Will return 0 if record not found (subsonic3 only)
var storage3 = (from s in Storage
where s.ColumnName == "value"
select s).SingleOrDefault();
// Will throw an exception if record not found (subsonic3 only)
var storage3 = (from s in Storage
where s.ColumnName == "value"
select s).Single();
Поскольку дб частичный класс, который вы можете продлить его. Просто создайте новый файл в том же пространстве имен (но еще одну папку в вашем решении). Это относится к дозвуковой 2, но, похоже, будет похоже на дозвуковое 3.
public static partial class DB
{
public static T Single<T>(String columName, Object columnValue) where T: RecordBase<T>, new()
{
return Select().From<T>()
.Where(columnName).IsEqualTo(columnValue)
.ExecuteSingle<T>();
}
}
Да, не думал об этом;) Тем не менее с помощью дозвуковых 2, потому что я ограничивается рамкой 2.0. С нетерпением ждем, чтобы в ближайшем будущем миргреть. –
@SchlaWiener: Не по теме, но, поскольку вы упомянули об этом, я скажу, что я не очень доволен SubSonic 3. Уверен, что синтаксис LINQ хорош, но он глючит, и когда поставщик LINQ не попадает в ошибка, она просто ограничена. Не говоря уже о том, что в шаблоном коде достаточно разрывать изменения, чтобы быть хлопот. Надеюсь, вы скоро сможете продвинуться в карьере, но не волнуйтесь за SS3, LOL. –
Поскольку я использую mysql, который, вероятно, не так сильно проверен как сервер sql, я ожидаю найти некоторые ошибки. Но поскольку это открытый исходный код, я могу исправить его сам;) Функция killer для меня является дозвуковой в сочетании с режимом сервера XtraGrid и источником данных linq. Http://tv.devexpress.com/#XtraGridLinqServerMode У меня есть приложение для демонстрации, и это потрясающе , Я могу делать инкрементный поиск/сортировку и группировку на таблице с 200000 + записями, и это быстро. –