private Schema(SchemaProvider schemaProvider) { _schemaProvider = schemaProvider; _typesNamespace = _schemaProvider.GetTypesNamespace(); _containersNamespace = _schemaProvider.GetContainersNamespace(); _lazyTables = new Lazy<TableCollection>(CreateTableCollection); _lazyFunctions = new Lazy<FunctionCollection>(CreateFunctionCollection); _lazyEntityTypes = new Lazy<List<EdmEntityType>>(CreateEntityTypeCollection); _lazyComplexTypes = new Lazy<List<EdmComplexType>>(CreateComplexTypeCollection); }
private Schema(string metadataString, Func<Task<string>> resolveMedatataAsync) { _schemaProvider = new SchemaProvider(this); _metadataString = metadataString; _resolveMetadataAsync = resolveMedatataAsync; _lazyMetadata = new Lazy<EdmSchema>(() => ResponseReader.GetSchema(_metadataString)); _lazyTypesNamespace = new Lazy<string>(_schemaProvider.GetTypesNamespace); _lazyContainersNamespace = new Lazy<string>(_schemaProvider.GetContainersNamespace); _lazyTables = new Lazy<TableCollection>(CreateTableCollection); _lazyFunctions = new Lazy<FunctionCollection>(CreateFunctionCollection); _lazyEntityTypes = new Lazy<List<EdmEntityType>>(CreateEntityTypeCollection); _lazyComplexTypes = new Lazy<List<EdmComplexType>>(CreateComplexTypeCollection); }
private IDataSourceSchema ResolveSchema() { var t = this._client.GetMetadataDocumentAsync(); t.Wait(); var metadataDocument = t.Result; SchemaProvider sp = new SchemaProvider(metadataDocument); return sp.GetODataDataSourceSchema(this._entitySet); }
internal static ISchema Get(SchemaProvider schemaProvider) { return new Schema(schemaProvider); }
public static ISchema ParseSchemaString(string schemaString) { return(SchemaProvider.FromMetadata(schemaString).Schema); }
public static string GetSchemaAsString(string urlBase) { return(SchemaProvider.FromUrl(urlBase).SchemaAsString); }
internal static Schema Get(SchemaProvider schemaProvider) { return(new Schema(schemaProvider)); }