public OrchardDataServiceMetadataProvider(OrchardDataSource source)
        {
            OrchardDataSource = source;

            foreach (var definition in OrchardDataSource.ContentManager.GetContentTypeDefinitions())
            {
                var name = definition.Name;
                var r    = new ResourceType(typeof(ContentItem), ResourceTypeKind.EntityType, null, null, name, false);

                r.AddProperty(new ResourceProperty("Id", ResourcePropertyKind.Primitive | ResourcePropertyKind.Key, ResourceType.GetPrimitiveResourceType(typeof(int))));
                r.AddProperty(new ResourceProperty("Version", ResourcePropertyKind.Primitive, ResourceType.GetPrimitiveResourceType(typeof(int))));

                foreach (var part in definition.Parts)
                {
                    var propertyResourceType = GetComplexResourceType(part);
                    var resourceProperty     = new ResourceProperty(part.PartDefinition.Name, ResourcePropertyKind.ComplexType, propertyResourceType);
                    resourceProperty.CanReflectOnInstanceTypeProperty = false;
                    r.AddProperty(resourceProperty);
                }

                r.SetReadOnly();
                resourceTypes.Add(name, r);
                var s = new ResourceSet(name, r);
                s.CustomState = definition;
                s.SetReadOnly();
                resourceSets.Add(name, s);
            }
        }
Ejemplo n.º 2
0
        public OrchardQueryable(ContentTypeDefinition type, OrchardDataSource dataSource)
        {
            _type       = type;
            _dataSource = dataSource;

            Provider    = new OrchardQueryProvider(type, _dataSource);
            Expression  = Expression.Constant(this);
            ElementType = typeof(ContentItem);
        }
Ejemplo n.º 3
0
 public OrchardServiceProvider(OrchardDataSource orchardDataSource)
 {
     _orchardDataSource = orchardDataSource;
     _orchardDataServiceMetadataProvider = new OrchardDataServiceMetadataProvider(orchardDataSource);
 }
Ejemplo n.º 4
0
 public OrchardQueryContext(ContentTypeDefinition type, OrchardDataSource dataSource)
 {
     _type       = type;
     _dataSource = dataSource;
 }
 public OrchardDataServiceQueryProvider(OrchardDataSource dataSource, OrchardServiceProvider <T> serviceProvider)
 {
     _dataSource      = dataSource;
     _serviceProvider = serviceProvider;
 }
Ejemplo n.º 6
0
 public OrchardQueryContext(ContentTypeDefinition type, OrchardDataSource dataSource) {
     _type = type;
     _dataSource = dataSource;
 }