From: <all...@us...> - 2009-11-20 23:22:33
|
Revision: 6 http://cronoscontrol.svn.sourceforge.net/cronoscontrol/?rev=6&view=rev Author: allancascante Date: 2009-11-20 23:22:25 +0000 (Fri, 20 Nov 2009) Log Message: ----------- Ticket #1 added some a missing class. Added Paths: ----------- source/trunk/CronosControl/CronosControlBusinessClassLibrary/Business/Business.cs Added: source/trunk/CronosControl/CronosControlBusinessClassLibrary/Business/Business.cs =================================================================== --- source/trunk/CronosControl/CronosControlBusinessClassLibrary/Business/Business.cs (rev 0) +++ source/trunk/CronosControl/CronosControlBusinessClassLibrary/Business/Business.cs 2009-11-20 23:22:25 UTC (rev 6) @@ -0,0 +1,83 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using CronosControl.Model; +using CronosControl.Business.Util.ErrorHandling; +using Microsoft.Practices.EnterpriseLibrary.ExceptionHandling; +using System.Data.Objects.DataClasses; + +namespace CronosControl.Business +{ + public class Business<T> : IBusiness<T> where T : IEntityWithKey + { + private CronosControlEntities cronosControlEntities; + + public CronosControlEntities CronosControlEntities + { + get { return cronosControlEntities; } + set { cronosControlEntities = value; } + } + + #region IBusiness<User> Members + + public virtual List<IBusinessError> Save(T entity) + { + List<IBusinessError> errors = new List<IBusinessError>(); + try + { + cronosControlEntities = new CronosControlEntities(); + Object savedEntity = null; + + if (entity.EntityKey != null && cronosControlEntities.TryGetObjectByKey(entity.EntityKey, out savedEntity)) + { + CronosControlEntities.Attach(entity); + CronosControlEntities.SaveChanges(); + return errors; + } + else + { + cronosControlEntities.AddObject(entity.GetType().Name, entity); + CronosControlEntities.SaveChanges(); + return errors; + } + } + catch (Exception ex) + { + ExceptionPolicy.HandleException(ex, "Exception Policy"); + errors.Add(new ExceptionBusinessError(ex)); + return errors; + } + } + + public virtual T Get(T entity) + { + cronosControlEntities = new CronosControlEntities(); + Object savedEntity = null; + if (entity.EntityKey != null && cronosControlEntities.TryGetObjectByKey(entity.EntityKey, out savedEntity)) + { + return (T)savedEntity; + } + else + { + return entity; + } + } + + public virtual bool Find(T entity) + { + cronosControlEntities = new CronosControlEntities(); + Object savedEntity = null; + if (entity.EntityKey != null && cronosControlEntities.TryGetObjectByKey(entity.EntityKey, out savedEntity)) + { + return true; + } + else + { + return false; + } + } + + #endregion + } +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |