Судя по ответам, проект в анабиозе.
А мне он нравится — он
простой в употреблении, хотя и дико переусложнённый в плане дизайна (в угоду всемогутерности, конечно).
Так как "я и сам немного программист"
, то запилил пару
костылей, потому что разбираться со всеми архитектурными выкрутасами — некогда, а работу делать надо.
Кастомные сорсы закомпрессил
здесь.
Итак, что появилось:
DbManager db;
db.OpenTrans("имя");// именованые транзакции
db.CloseTrans("имя");
db.CancelTrans("имя");
var qry = new SqlQuery(db);
db.SetCommand(@"SET IDENTITY_INSERT Person ON").ExecuteNonQuery();
qry.Insert(obj, true);// true = вставить запись ВМЕСТЕ С ID (identity полем)
int newID = qry.InsertWithID(obj);// вставить запись и вернуть её PK (да, только целые! костыль для 99% случаев)
Никого не принуждаю, просто делюсь.
Всё руки чешутся написать свой ORM, с блэкджеком и маппингами, но пока юзаю проверенный BLT, спасибо всем авторам этого чуда!
На мой взгляд, ничего не мешает запилить MS-only ORM, зато который будет простым, легко улучшаемым(сопровождаемым) и гибким. Как показала практика использования BLT, есть много затыков при использовании тупых "объект-таблица" сопоставлений. Либа должна быть гибче в этом плане. Если прошерстить этот форум, найдётся куча неординарных, но интересных вещей. Например, ОДИН класс, который можно сохранить в несколько разных таблиц — why not? Время идёт, сценарии усложняются, EF'у этот поезд уже никогда не догнать.