private static Ai GetObject(long id) { lock (TypeLocker) { Ai obj; if (Manager.Settings.CacheData) { if (_objStore.TryGetValue(id, out obj)) { return obj; } } using (var session = SessionFactory.OpenSession()) { obj = session.Get<Ai>(id); } if (obj != null) { obj.IsNew = false; if (Manager.Settings.CacheData) _objStore.Add(id, obj); return obj; } obj = new Ai() { Id = id }; if (Manager.Settings.CacheData) _objStore.Add(id, obj); return obj; } }