public Page PageFor(Type pageClass, PageSession session = null) { const BindingFlags bindingFlags = BindingFlags.CreateInstance | BindingFlags.Public | BindingFlags.Instance | BindingFlags.OptionalParamBinding; try { return((Page)Activator.CreateInstance(pageClass, bindingFlags, null, new object[] { session }, CultureInfo.CurrentCulture)); } catch (TargetInvocationException x) { // ReSharper disable once PossibleNullReferenceException throw x.InnerException; } }
protected Page(PageSession session) { Session = session; Attribute.Validate(GetType()); }
public Page PageFor(string pageName, PageSession session = null) { return(PageFor(PageClassFor(pageName), session)); }