Mercurial > altnet-hispano
view Agendas/trunk/src/Agendas.Repositories.Memory/RepositoryBase.cs @ 182:beeb48ddb44a
Warning con los errores que se guarden en el log del track de un evento durante una notificación (twitter, calendar, blog)
author | nelopauselli |
---|---|
date | Mon, 08 Aug 2011 21:57:10 -0300 |
parents | 2d1adbaf0373 |
children |
line wrap: on
line source
using System; using System.Collections.Generic; using AltNetHispano.Agendas.Domain; namespace AltNetHispano.Agendas.Repositories.Memory { public class RepositoryBase<T> where T : Identificable { protected static readonly IDictionary<Guid, T> Objects = new Dictionary<Guid, T>(); public T Get(Guid id) { T value; return Objects.TryGetValue(id, out value) ? value : null; } public void Save(T obj) { if (obj.Id==Guid.Empty) { var setter = typeof (Identificable).GetProperty("Id"); setter.SetValue(obj, Guid.NewGuid(), null); } if (!Objects.Keys.Contains(obj.Id)) Objects.Add(obj.Id, obj); } public void Delete(T obj) { Objects.Remove(obj.Id); } } }