MongoServices 0.2.0
A Service/Repository Framework for mongoDB
C:/Development/MongoServices/Source/MongoServices/Repositories/Classes/ReadWriteRepository.cs
Go to the documentation of this file.
00001 using System;
00002 using System.Collections.Generic;
00003 using System.Linq;
00004 using System.Text;
00005 using MongoDB.Driver.Builders;
00006 using MongoDB.Bson;
00007 
00008 namespace MongoServices
00009 {
00014         public abstract class ReadWriteRepository<T> : ReadOnlyRepository<T>, IReadWriteRepository<T>
00015                 where T : MongoServicesModel
00016         {
00017                 #region Public Methods
00018 
00019 
00020 
00021 
00022                 public virtual void Save(T model)
00023                 {
00024                         if (model.MarkedForDelete)
00025                         {
00026                                 DeleteById(model.Id);
00027                         }
00028                         else
00029                         {
00030                                 if (model.DateCreated == default(DateTime))
00031                                 {
00032                                         model.DateCreated = DateTime.Now;
00033                                 }
00034 
00035                                 model.DateModified = DateTime.Now;
00036 
00037                                 Collection.Save(model);
00038                         }
00039                 }
00040 
00045                 public void DeleteById(ObjectId id)
00046                 {
00047                         Collection.Remove(Query.EQ("_id", id));
00048                 }
00049                 #endregion
00050         }
00051 }
 All Classes Namespaces Files Functions Enumerations Properties