public ITemplate CreateInstance(InstanceContext context) { if (context == null) throw new ArgumentNullException("context"); return context.Loader.CreateInstance(context.TemplateType); }
public ITemplate CreateInstance(InstanceContext context) { var constructor = context.TemplateType.GetConstructors().OrderByDescending(c => c.GetParameters().Length).FirstOrDefault(); if (constructor == null) { throw new InvalidOperationException("Base template does not contain constructor"); } var arguments = constructor.GetParameters().Select(parameter => _resolver(parameter.ParameterType)).ToArray(); return (ITemplate)constructor.Invoke(arguments); }
public ITemplate CreateInstance(InstanceContext context) { if (context == null) throw new ArgumentNullException("context"); var instance = context.Loader.CreateInstance(context.TemplateType); var configurable = instance as IConfigurable; if (configurable != null) { configurable.Configure(_context); } return instance; }
public ITemplate CreateInstance(InstanceContext context) { Ensure.That(() => context).IsNotNull(); ITemplate template = context.Loader.CreateInstance(context.TemplateType); IExtendedTemplate service = template as IExtendedTemplate; if (service != null) { service.Resource = kernel.Resolve<ITemplateResourceHelper>(new { templateBase = template }); service.Url = kernel.Resolve<TemplateUrlHelper>(); } return template; }
public ITemplate CreateInstance(InstanceContext context) { return _activator(context); }
/// <summary> /// Creates an instance of the specifed template. /// </summary> /// <param name="context">The instance context.</param> /// <returns> /// An instance of <see cref="T:RazorEngine.Templating.ITemplate" />. /// </returns> public ITemplate CreateInstance(InstanceContext context) { return _resolver.Get(context.TemplateType) as ITemplate; }