private void SetObjectIdBeforeInsert(object obj) { var objectType = obj.GetType(); var id = RetrieveNextId(objectType); var idPropertyName = ClassConfigContainer.FindIdPropertyNamer(objectType); SetObjectId(obj, idPropertyName, id); }
private static long SetObjectIdAfterInsert(object obj, object result, out string idPropertyName) { long id = 0; var succeeded = Int64.TryParse(result.ToString(), out id); if (succeeded == false) { throw new EasylinkException( "Error occured when setting object id for {0}, database does not return number!", obj.GetType().Name); } idPropertyName = ClassConfigContainer.FindIdPropertyNamer(obj.GetType()); SetObjectId(obj, idPropertyName, id); return(id); }