Updates referencesource to .NET 4.7
[mono.git] / mcs / class / referencesource / System.Data.Entity / System / Data / EntityModel / SchemaObjectModel / EntityContainerEntitySetDefiningQuery.cs
1 //---------------------------------------------------------------------
2 // <copyright file="EntityContainerEntitySetDefiningQuery.cs" company="Microsoft">
3 //      Copyright (c) Microsoft Corporation.  All rights reserved.
4 // </copyright>
5 //
6 // @owner       Microsoft
7 // @backupOwner Microsoft
8 //---------------------------------------------------------------------
9
10 namespace System.Data.EntityModel.SchemaObjectModel
11 {
12     using System;
13     using System.Data.Metadata.Edm;
14     using System.Xml;
15
16     /// <summary>
17     /// Represents an DefiningQuery element.
18     /// </summary>
19     internal sealed class EntityContainerEntitySetDefiningQuery : SchemaElement
20     {
21         private string _query;
22
23         /// <summary>
24         /// Constructs an EntityContainerEntitySet
25         /// </summary>
26         /// <param name="parentElement">Reference to the schema element.</param>
27         public EntityContainerEntitySetDefiningQuery(EntityContainerEntitySet parentElement)
28             : base( parentElement )
29         {
30         }
31
32         public string Query
33         {
34             get { return _query; }
35         }
36
37         protected override bool HandleText(XmlReader reader)
38         {
39             _query = reader.Value;
40             return true;
41         }
42
43         internal override void Validate()
44         {
45             base.Validate();
46
47             if(String.IsNullOrEmpty(_query))
48             {
49                 AddError(ErrorCode.EmptyDefiningQuery, EdmSchemaErrorSeverity.Error,
50                     System.Data.Entity.Strings.EmptyDefiningQuery);
51             }
52         }
53    }
54 }