Exemple #1
0
        public static void BuildUp(this CompositionContainer container, object obj)
        {
            var batch = new CompositionBatch();
            var part = AttributedModelServices.CreatePart(obj);

            if (part.ImportDefinitions.Any())
                batch.AddPart(part);

            container.Compose(batch);
        }
		public static CompositionBatch Compose(this CompositionContainer container, IComposableHandler handler)
		{
			var batch = new CompositionBatch();

			batch.AddPart(handler);

			container.Compose(batch);

			return batch;
		}
        internal static ISpecimenBuilderNode ReplaceNodes(
            this ISpecimenBuilderNode graph,
            Func<ISpecimenBuilderNode, ISpecimenBuilderNode> with,
            Func<ISpecimenBuilderNode, bool> when)
        {
            if (when(graph))
                return with(graph);

            var nodes = from b in graph
                        let n = b as ISpecimenBuilderNode
                        select n != null ? n.ReplaceNodes(with, when) : b;
            return graph.Compose(nodes);
        }
 internal static object CreateAnonymous(this ISpecimenBuilderComposer composer, object request)
 {
     return new SpecimenContext(composer.Compose()).Resolve(request);
 }
 /// <summary>
 /// Compose a completed Task that can be added to an existing composition
 /// </summary>
 /// <returns>A completed Task</returns>
 public static Task ComposeCompleted(this Composer composer)
 {
     return composer.Compose(x => { });
 }
        /// <summary>
        /// Método que compara una fecha, su hora de inicio y su hora de fin.
        /// </summary>
        /// <param name="date">
        /// Parámetro que indica la fecha.
        /// </param>
        /// <param name="time1">
        /// Parámetro que indica la hora de inicio.</param>
        /// <param name="time2">
        /// Parámetro que indica laa hora de fin.
        /// </param>
        /// <returns>
        /// - Un valor menor que cero indica que hora1 es anterior a hora2.
        /// - Un valor mayor que cero indica que hora1 es posterior a hora2.
        /// - Un valor igual a cero indica que ambas horas comparadas son iguales.
        /// </returns>
        public static int ComposeAndCompareTo24(this DateTime date, DateTime time1, DateTime time2)
        {
            DateTime dt1 = date.Compose(time1);
            DateTime dt2 = date.Compose(time2);

            return dt1.CompareTo24(dt2);
        }
 /// <summary>
 /// Compone un campo DateTime con la fecha y hora combinadas a partir de dos campos datetime separados.
 /// </summary>
 /// <remarks>
 /// Utilizar este método únicamente en la parrilla.
 /// </remarks>
 /// <param name="dia">
 /// Parámetro que indica valor para el dia.
 /// </param>
 /// <param name="hora">
 /// Parámetro que indica el valor para la hora.</param>
 /// <returns>
 /// Devuelve el dia / hora combinados.
 /// </returns>
 public static DateTime ComposeForSchedule(this DateTime dia, DateTime? hora)
 {
     // Si la hora es menor que 6, debe adelantarse un día para que la parrilla se muestre correctamente.
     return dia.Compose(hora).Normalize(true);
 }