protected override void ProcessVocabularyAnnotation(IEdmVocabularyAnnotation annotation) { EdmSchema edmSchema = null; if (!annotation.IsInline(this.Model)) { string schemaNamespace = annotation.GetSchemaNamespace(this.Model); string empty = schemaNamespace; if (schemaNamespace == null) { Dictionary <string, EdmSchema> strs = this.modelSchemas; string str = strs.Select <KeyValuePair <string, EdmSchema>, string>((KeyValuePair <string, EdmSchema> s) => s.Key).FirstOrDefault <string>(); empty = str; if (str == null) { empty = string.Empty; } } string str1 = empty; if (!this.modelSchemas.TryGetValue(str1, out edmSchema)) { edmSchema = new EdmSchema(str1); this.modelSchemas.Add(edmSchema.Namespace, edmSchema); } edmSchema.AddVocabularyAnnotation(annotation); this.activeSchema = edmSchema; } if (annotation.Term != null) { this.CheckSchemaElementReference(annotation.Term); } base.ProcessVocabularyAnnotation(annotation); }
protected override void ProcessVocabularyAnnotation(IEdmVocabularyAnnotation annotation) { if (!annotation.IsInline(this.Model)) { var annotationSchemaNamespace = annotation.GetSchemaNamespace(this.Model) ?? this.modelSchemas.Select(s => s.Key).FirstOrDefault() ?? string.Empty; EdmSchema annotationSchema; if (!this.modelSchemas.TryGetValue(annotationSchemaNamespace, out annotationSchema)) { annotationSchema = new EdmSchema(annotationSchemaNamespace); this.modelSchemas.Add(annotationSchema.Namespace, annotationSchema); } annotationSchema.AddVocabularyAnnotation(annotation); this.activeSchema = annotationSchema; } if (annotation.Term != null) { this.CheckSchemaElementReference(annotation.Term); } base.ProcessVocabularyAnnotation(annotation); }
protected override void ProcessVocabularyAnnotation(IEdmVocabularyAnnotation annotation) { EdmSchema edmSchema = null; if (!annotation.IsInline(this.Model)) { string schemaNamespace = annotation.GetSchemaNamespace(this.Model); string empty = schemaNamespace; if (schemaNamespace == null) { Dictionary<string, EdmSchema> strs = this.modelSchemas; string str = strs.Select<KeyValuePair<string, EdmSchema>, string>((KeyValuePair<string, EdmSchema> s) => s.Key).FirstOrDefault<string>(); empty = str; if (str == null) { empty = string.Empty; } } string str1 = empty; if (!this.modelSchemas.TryGetValue(str1, out edmSchema)) { edmSchema = new EdmSchema(str1); this.modelSchemas.Add(edmSchema.Namespace, edmSchema); } edmSchema.AddVocabularyAnnotation(annotation); this.activeSchema = edmSchema; } if (annotation.Term != null) { this.CheckSchemaElementReference(annotation.Term); } base.ProcessVocabularyAnnotation(annotation); }