Exemple #1
0
        internal View(Type viewType)
        {
            var viewAttribute = viewType.GetCustomAttribute <RESTarViewAttribute>();

            Type                 = viewType;
            Name                 = viewAttribute.CustomName ?? viewType.Name;
            ViewSelector         = DelegateMaker.GetDelegate <ViewSelector <TResource> >(viewType);
            Members              = viewType.GetDeclaredProperties();
            Description          = viewAttribute.Description;
            ConditionBindingRule = viewAttribute.AllowDynamicConditions
                ? TermBindingRule.DeclaredWithDynamicFallback
                : TermBindingRule.OnlyDeclared;
        }
        private IResource MakeBinaryResource <T>() where T : class, Resources.IBinary <T>
        {
            var binarySelector = DelegateMaker.GetDelegate <BinarySelector <T> >(typeof(T));

            return(new BinaryResource <T>(binarySelector, TypeCache));
        }