//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:4.0.30319.1
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

namespace ComboBoxDemo
{
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.ComponentModel.DataAnnotations;
    using System.Linq;
    using System.ServiceModel.DomainServices;
    using System.ServiceModel.DomainServices.Client;
    using System.ServiceModel.DomainServices.Client.ApplicationServices;
    
    
    /// <summary>
    /// Context for the RIA application.
    /// </summary>
    /// <remarks>
    /// This context extends the base to make application services and types available
    /// for consumption from code and xaml.
    /// </remarks>
    public sealed partial class WebContext : WebContextBase
    {
        
        #region Extensibility Method Definitions

        /// <summary>
        /// This method is invoked from the constructor once initialization is complete and
        /// can be used for further object setup.
        /// </summary>
        partial void OnCreated();

        #endregion
        
        
        /// <summary>
        /// Initializes a new instance of the WebContext class.
        /// </summary>
        public WebContext()
        {
            this.OnCreated();
        }
        
        /// <summary>
        /// Gets the context that is registered as a lifetime object with the current application.
        /// </summary>
        /// <exception cref="InvalidOperationException"> is thrown if there is no current application,
        /// no contexts have been added, or more than one context has been added.
        /// </exception>
        /// <seealso cref="System.Windows.Application.ApplicationLifetimeObjects"/>
        public new static WebContext Current
        {
            get
            {
                return ((WebContext)(WebContextBase.Current));
            }
        }
    }
}
namespace ComboBoxDemo.Web
{
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.ComponentModel.DataAnnotations;
    using System.Linq;
    using System.Runtime.Serialization;
    using System.ServiceModel;
    using System.ServiceModel.DomainServices;
    using System.ServiceModel.DomainServices.Client;
    using System.ServiceModel.DomainServices.Client.ApplicationServices;
    using System.ServiceModel.Web;
    
    
    /// <summary>
    /// The domain context corresponding to the 'AdresarDomainService' domain service.
    /// </summary>
    public sealed partial class AdresarDomainContext : DomainContext
    {
        
        #region Extensibility Method Definitions

        /// <summary>
        /// This method is invoked from the constructor once initialization is complete and
        /// can be used for further object setup.
        /// </summary>
        partial void OnCreated();

        #endregion
        
        
        /// <summary>
        /// Initializes a new instance of the <see cref="AdresarDomainContext"/> class.
        /// </summary>
        public AdresarDomainContext() : 
                this(new WebDomainClient<IAdresarDomainServiceContract>(new Uri("ComboBoxDemo-Web-AdresarDomainService.svc", UriKind.Relative)))
        {
        }
        
        /// <summary>
        /// Initializes a new instance of the <see cref="AdresarDomainContext"/> class with the specified service URI.
        /// </summary>
        /// <param name="serviceUri">The AdresarDomainService service URI.</param>
        public AdresarDomainContext(Uri serviceUri) : 
                this(new WebDomainClient<IAdresarDomainServiceContract>(serviceUri))
        {
        }
        
        /// <summary>
        /// Initializes a new instance of the <see cref="AdresarDomainContext"/> class with the specified <paramref name="domainClient"/>.
        /// </summary>
        /// <param name="domainClient">The DomainClient instance to use for this domain context.</param>
        public AdresarDomainContext(DomainClient domainClient) : 
                base(domainClient)
        {
            this.OnCreated();
        }
        
        /// <summary>
        /// Gets the set of <see cref="Osoba"/> entities that have been loaded into this <see cref="AdresarDomainContext"/> instance.
        /// </summary>
        public EntitySet<Osoba> Osobas
        {
            get
            {
                return base.EntityContainer.GetEntitySet<Osoba>();
            }
        }
        
        /// <summary>
        /// Gets the set of <see cref="Pohlavi"/> entities that have been loaded into this <see cref="AdresarDomainContext"/> instance.
        /// </summary>
        public EntitySet<Pohlavi> Pohlavis
        {
            get
            {
                return base.EntityContainer.GetEntitySet<Pohlavi>();
            }
        }
        
        /// <summary>
        /// Gets the set of <see cref="MyUser"/> entities that have been loaded into this <see cref="AdresarDomainContext"/> instance.
        /// </summary>
        public EntitySet<MyUser> MyUsers
        {
            get
            {
                return base.EntityContainer.GetEntitySet<MyUser>();
            }
        }
        
        /// <summary>
        /// Gets an EntityQuery instance that can be used to load <see cref="Osoba"/> entities using the 'GetOsobaById' query.
        /// </summary>
        /// <returns>An EntityQuery that can be loaded to retrieve <see cref="Osoba"/> entities.</returns>
        public EntityQuery<Osoba> GetOsobaByIdQuery()
        {
            this.ValidateMethod("GetOsobaByIdQuery", null);
            return base.CreateQuery<Osoba>("GetOsobaById", null, false, false);
        }
        
        /// <summary>
        /// Gets an EntityQuery instance that can be used to load <see cref="Osoba"/> entities using the 'GetOsobas' query.
        /// </summary>
        /// <returns>An EntityQuery that can be loaded to retrieve <see cref="Osoba"/> entities.</returns>
        public EntityQuery<Osoba> GetOsobasQuery()
        {
            this.ValidateMethod("GetOsobasQuery", null);
            return base.CreateQuery<Osoba>("GetOsobas", null, false, true);
        }
        
        /// <summary>
        /// Gets an EntityQuery instance that can be used to load <see cref="Pohlavi"/> entities using the 'GetPohlavis' query.
        /// </summary>
        /// <returns>An EntityQuery that can be loaded to retrieve <see cref="Pohlavi"/> entities.</returns>
        public EntityQuery<Pohlavi> GetPohlavisQuery()
        {
            this.ValidateMethod("GetPohlavisQuery", null);
            return base.CreateQuery<Pohlavi>("GetPohlavis", null, false, true);
        }
        
        /// <summary>
        /// Gets an EntityQuery instance that can be used to load <see cref="MyUser"/> entities using the 'GetUserName' query.
        /// </summary>
        /// <returns>An EntityQuery that can be loaded to retrieve <see cref="MyUser"/> entities.</returns>
        public EntityQuery<MyUser> GetUserNameQuery()
        {
            this.ValidateMethod("GetUserNameQuery", null);
            return base.CreateQuery<MyUser>("GetUserName", null, false, false);
        }
        
        /// <summary>
        /// Asynchronously invokes the 'CommitChanges' method of the domain service.
        /// </summary>
        /// <param name="callback">Callback to invoke when the operation completes.</param>
        /// <param name="userState">Value to pass to the callback.  It can be <c>null</c>.</param>
        /// <returns>An operation instance that can be used to manage the asynchronous request.</returns>
        public InvokeOperation<bool> CommitChanges(Action<InvokeOperation<bool>> callback, object userState)
        {
            this.ValidateMethod("CommitChanges", null);
            return ((InvokeOperation<bool>)(this.InvokeOperation("CommitChanges", typeof(bool), null, true, callback, userState)));
        }
        
        /// <summary>
        /// Asynchronously invokes the 'CommitChanges' method of the domain service.
        /// </summary>
        /// <returns>An operation instance that can be used to manage the asynchronous request.</returns>
        public InvokeOperation<bool> CommitChanges()
        {
            this.ValidateMethod("CommitChanges", null);
            return ((InvokeOperation<bool>)(this.InvokeOperation("CommitChanges", typeof(bool), null, true, null, null)));
        }
        
        /// <summary>
        /// Creates a new entity container for this domain context's entity sets.
        /// </summary>
        /// <returns>A new container instance.</returns>
        protected override EntityContainer CreateEntityContainer()
        {
            return new AdresarDomainContextEntityContainer();
        }
        
        /// <summary>
        /// Service contract for the 'AdresarDomainService' domain service.
        /// </summary>
        [ServiceContract()]
        public interface IAdresarDomainServiceContract
        {
            
            /// <summary>
            /// Asynchronously invokes the 'CommitChanges' operation.
            /// </summary>
            /// <param name="callback">Callback to invoke on completion.</param>
            /// <param name="asyncState">Optional state object.</param>
            /// <returns>An IAsyncResult that can be used to monitor the request.</returns>
            [FaultContract(typeof(DomainServiceFault), Action="http://tempuri.org/AdresarDomainService/CommitChangesDomainServiceFault", Name="DomainServiceFault", Namespace="DomainServices")]
            [OperationContract(AsyncPattern=true, Action="http://tempuri.org/AdresarDomainService/CommitChanges", ReplyAction="http://tempuri.org/AdresarDomainService/CommitChangesResponse")]
            IAsyncResult BeginCommitChanges(AsyncCallback callback, object asyncState);
            
            /// <summary>
            /// Completes the asynchronous operation begun by 'BeginCommitChanges'.
            /// </summary>
            /// <param name="result">The IAsyncResult returned from 'BeginCommitChanges'.</param>
            /// <returns>The 'Boolean' returned from the 'CommitChanges' operation.</returns>
            bool EndCommitChanges(IAsyncResult result);
            
            /// <summary>
            /// Asynchronously invokes the 'GetOsobaById' operation.
            /// </summary>
            /// <param name="callback">Callback to invoke on completion.</param>
            /// <param name="asyncState">Optional state object.</param>
            /// <returns>An IAsyncResult that can be used to monitor the request.</returns>
            [FaultContract(typeof(DomainServiceFault), Action="http://tempuri.org/AdresarDomainService/GetOsobaByIdDomainServiceFault", Name="DomainServiceFault", Namespace="DomainServices")]
            [OperationContract(AsyncPattern=true, Action="http://tempuri.org/AdresarDomainService/GetOsobaById", ReplyAction="http://tempuri.org/AdresarDomainService/GetOsobaByIdResponse")]
            [WebGet()]
            IAsyncResult BeginGetOsobaById(AsyncCallback callback, object asyncState);
            
            /// <summary>
            /// Completes the asynchronous operation begun by 'BeginGetOsobaById'.
            /// </summary>
            /// <param name="result">The IAsyncResult returned from 'BeginGetOsobaById'.</param>
            /// <returns>The 'QueryResult' returned from the 'GetOsobaById' operation.</returns>
            QueryResult<Osoba> EndGetOsobaById(IAsyncResult result);
            
            /// <summary>
            /// Asynchronously invokes the 'GetOsobas' operation.
            /// </summary>
            /// <param name="callback">Callback to invoke on completion.</param>
            /// <param name="asyncState">Optional state object.</param>
            /// <returns>An IAsyncResult that can be used to monitor the request.</returns>
            [FaultContract(typeof(DomainServiceFault), Action="http://tempuri.org/AdresarDomainService/GetOsobasDomainServiceFault", Name="DomainServiceFault", Namespace="DomainServices")]
            [OperationContract(AsyncPattern=true, Action="http://tempuri.org/AdresarDomainService/GetOsobas", ReplyAction="http://tempuri.org/AdresarDomainService/GetOsobasResponse")]
            [WebGet()]
            IAsyncResult BeginGetOsobas(AsyncCallback callback, object asyncState);
            
            /// <summary>
            /// Completes the asynchronous operation begun by 'BeginGetOsobas'.
            /// </summary>
            /// <param name="result">The IAsyncResult returned from 'BeginGetOsobas'.</param>
            /// <returns>The 'QueryResult' returned from the 'GetOsobas' operation.</returns>
            QueryResult<Osoba> EndGetOsobas(IAsyncResult result);
            
            /// <summary>
            /// Asynchronously invokes the 'GetPohlavis' operation.
            /// </summary>
            /// <param name="callback">Callback to invoke on completion.</param>
            /// <param name="asyncState">Optional state object.</param>
            /// <returns>An IAsyncResult that can be used to monitor the request.</returns>
            [FaultContract(typeof(DomainServiceFault), Action="http://tempuri.org/AdresarDomainService/GetPohlavisDomainServiceFault", Name="DomainServiceFault", Namespace="DomainServices")]
            [OperationContract(AsyncPattern=true, Action="http://tempuri.org/AdresarDomainService/GetPohlavis", ReplyAction="http://tempuri.org/AdresarDomainService/GetPohlavisResponse")]
            [WebGet()]
            IAsyncResult BeginGetPohlavis(AsyncCallback callback, object asyncState);
            
            /// <summary>
            /// Completes the asynchronous operation begun by 'BeginGetPohlavis'.
            /// </summary>
            /// <param name="result">The IAsyncResult returned from 'BeginGetPohlavis'.</param>
            /// <returns>The 'QueryResult' returned from the 'GetPohlavis' operation.</returns>
            QueryResult<Pohlavi> EndGetPohlavis(IAsyncResult result);
            
            /// <summary>
            /// Asynchronously invokes the 'GetUserName' operation.
            /// </summary>
            /// <param name="callback">Callback to invoke on completion.</param>
            /// <param name="asyncState">Optional state object.</param>
            /// <returns>An IAsyncResult that can be used to monitor the request.</returns>
            [FaultContract(typeof(DomainServiceFault), Action="http://tempuri.org/AdresarDomainService/GetUserNameDomainServiceFault", Name="DomainServiceFault", Namespace="DomainServices")]
            [OperationContract(AsyncPattern=true, Action="http://tempuri.org/AdresarDomainService/GetUserName", ReplyAction="http://tempuri.org/AdresarDomainService/GetUserNameResponse")]
            [WebGet()]
            IAsyncResult BeginGetUserName(AsyncCallback callback, object asyncState);
            
            /// <summary>
            /// Completes the asynchronous operation begun by 'BeginGetUserName'.
            /// </summary>
            /// <param name="result">The IAsyncResult returned from 'BeginGetUserName'.</param>
            /// <returns>The 'QueryResult' returned from the 'GetUserName' operation.</returns>
            QueryResult<MyUser> EndGetUserName(IAsyncResult result);
            
            /// <summary>
            /// Asynchronously invokes the 'SubmitChanges' operation.
            /// </summary>
            /// <param name="changeSet">The change-set to submit.</param>
            /// <param name="callback">Callback to invoke on completion.</param>
            /// <param name="asyncState">Optional state object.</param>
            /// <returns>An IAsyncResult that can be used to monitor the request.</returns>
            [FaultContract(typeof(DomainServiceFault), Action="http://tempuri.org/AdresarDomainService/SubmitChangesDomainServiceFault", Name="DomainServiceFault", Namespace="DomainServices")]
            [OperationContract(AsyncPattern=true, Action="http://tempuri.org/AdresarDomainService/SubmitChanges", ReplyAction="http://tempuri.org/AdresarDomainService/SubmitChangesResponse")]
            IAsyncResult BeginSubmitChanges(IEnumerable<ChangeSetEntry> changeSet, AsyncCallback callback, object asyncState);
            
            /// <summary>
            /// Completes the asynchronous operation begun by 'BeginSubmitChanges'.
            /// </summary>
            /// <param name="result">The IAsyncResult returned from 'BeginSubmitChanges'.</param>
            /// <returns>The collection of change-set entry elements returned from 'SubmitChanges'.</returns>
            IEnumerable<ChangeSetEntry> EndSubmitChanges(IAsyncResult result);
        }
        
        internal sealed class AdresarDomainContextEntityContainer : EntityContainer
        {
            
            public AdresarDomainContextEntityContainer()
            {
                this.CreateEntitySet<MyUser>(EntitySetOperations.None);
                this.CreateEntitySet<Osoba>(EntitySetOperations.All);
                this.CreateEntitySet<Pohlavi>(EntitySetOperations.All);
            }
        }
    }
    
    /// <summary>
    /// The 'MyUser' entity class.
    /// </summary>
    [DataContract(Namespace="http://schemas.datacontract.org/2004/07/ComboBoxDemo.Web")]
    public sealed partial class MyUser : Entity
    {
        
        private string _userName;
        
        #region Extensibility Method Definitions

        /// <summary>
        /// This method is invoked from the constructor once initialization is complete and
        /// can be used for further object setup.
        /// </summary>
        partial void OnCreated();
        partial void OnUserNameChanging(string value);
        partial void OnUserNameChanged();

        #endregion
        
        
        /// <summary>
        /// Initializes a new instance of the <see cref="MyUser"/> class.
        /// </summary>
        public MyUser()
        {
            this.OnCreated();
        }
        
        /// <summary>
        /// Gets or sets the 'UserName' value.
        /// </summary>
        [DataMember()]
        [Editable(false, AllowInitialValue=true)]
        [Key()]
        [RoundtripOriginal()]
        public string UserName
        {
            get
            {
                return this._userName;
            }
            set
            {
                if ((this._userName != value))
                {
                    this.OnUserNameChanging(value);
                    this.ValidateProperty("UserName", value);
                    this._userName = value;
                    this.RaisePropertyChanged("UserName");
                    this.OnUserNameChanged();
                }
            }
        }
        
        /// <summary>
        /// Computes a value from the key fields that uniquely identifies this entity instance.
        /// </summary>
        /// <returns>An object instance that uniquely identifies this entity instance.</returns>
        public override object GetIdentity()
        {
            return this._userName;
        }
    }
    
    /// <summary>
    /// The 'Osoba' entity class.
    /// </summary>
    [DataContract(Namespace="http://schemas.datacontract.org/2004/07/ComboBoxDemo.Web")]
    public sealed partial class Osoba : Entity
    {
        
        private int _id;
        
        private string _jmeno;
        
        private string[] _openAccessGenerated;
        
        private EntityRef<Pohlavi> _pohlavi;
        
        private Nullable<int> _pohlavi_ID;
        
        #region Extensibility Method Definitions

        /// <summary>
        /// This method is invoked from the constructor once initialization is complete and
        /// can be used for further object setup.
        /// </summary>
        partial void OnCreated();
        partial void OnIDChanging(int value);
        partial void OnIDChanged();
        partial void OnJmenoChanging(string value);
        partial void OnJmenoChanged();
        partial void OnOpenAccessGeneratedChanging(string[] value);
        partial void OnOpenAccessGeneratedChanged();
        partial void OnPohlavi_IDChanging(Nullable<int> value);
        partial void OnPohlavi_IDChanged();

        #endregion
        
        
        /// <summary>
        /// Initializes a new instance of the <see cref="Osoba"/> class.
        /// </summary>
        public Osoba()
        {
            this.OnCreated();
        }
        
        /// <summary>
        /// Gets or sets the 'ID' value.
        /// </summary>
        [ConcurrencyCheck()]
        [DataMember()]
        [Editable(false, AllowInitialValue=true)]
        [Key()]
        [RoundtripOriginal()]
        public int ID
        {
            get
            {
                return this._id;
            }
            set
            {
                if ((this._id != value))
                {
                    this.OnIDChanging(value);
                    this.ValidateProperty("ID", value);
                    this._id = value;
                    this.RaisePropertyChanged("ID");
                    this.OnIDChanged();
                }
            }
        }
        
        /// <summary>
        /// Gets or sets the 'Jmeno' value.
        /// </summary>
        [ConcurrencyCheck()]
        [DataMember()]
        [Required()]
        [RoundtripOriginal()]
        [StringLength(100)]
        public string Jmeno
        {
            get
            {
                return this._jmeno;
            }
            set
            {
                if ((this._jmeno != value))
                {
                    this.OnJmenoChanging(value);
                    this.RaiseDataMemberChanging("Jmeno");
                    this.ValidateProperty("Jmeno", value);
                    this._jmeno = value;
                    this.RaiseDataMemberChanged("Jmeno");
                    this.OnJmenoChanged();
                }
            }
        }
        
        /// <summary>
        /// Gets or sets the 'OpenAccessGenerated' value.
        /// </summary>
        [DataMember()]
        [Display(AutoGenerateField=false, AutoGenerateFilter=false, Description="OpenAccess Key", Name="-ID-")]
        [Editable(false)]
        [ReadOnly(true)]
        [RoundtripOriginal()]
        public string[] OpenAccessGenerated
        {
            get
            {
                return this._openAccessGenerated;
            }
            set
            {
                if ((this._openAccessGenerated != value))
                {
                    this.OnOpenAccessGeneratedChanging(value);
                    this.ValidateProperty("OpenAccessGenerated", value);
                    this._openAccessGenerated = value;
                    this.RaisePropertyChanged("OpenAccessGenerated");
                    this.OnOpenAccessGeneratedChanged();
                }
            }
        }
        
        /// <summary>
        /// Gets or sets the associated <see cref="Pohlavi"/> entity.
        /// </summary>
        [Association("FK_Osoba_Pohlavi", "Pohlavi_ID", "ID")]
        public Pohlavi Pohlavi
        {
            get
            {
                if ((this._pohlavi == null))
                {
                    this._pohlavi = new EntityRef<Pohlavi>(this, "Pohlavi", this.FilterPohlavi);
                }
                return this._pohlavi.Entity;
            }
            set
            {
                Pohlavi previous = this.Pohlavi;
                if ((previous != value))
                {
                    this.ValidateProperty("Pohlavi", value);
                    this._pohlavi.Entity = value;
                    this.RaisePropertyChanged("Pohlavi");
                }
            }
        }
        
        /// <summary>
        /// Gets or sets the 'Pohlavi_ID' value.
        /// </summary>
        [ConcurrencyCheck()]
        [DataMember()]
        [RoundtripOriginal()]
        public Nullable<int> Pohlavi_ID
        {
            get
            {
                return this._pohlavi_ID;
            }
            set
            {
                if ((this._pohlavi_ID != value))
                {
                    this.OnPohlavi_IDChanging(value);
                    this.RaiseDataMemberChanging("Pohlavi_ID");
                    this.ValidateProperty("Pohlavi_ID", value);
                    this._pohlavi_ID = value;
                    this.RaiseDataMemberChanged("Pohlavi_ID");
                    this.OnPohlavi_IDChanged();
                }
            }
        }
        
        private bool FilterPohlavi(Pohlavi entity)
        {
            return (entity.ID == this.Pohlavi_ID);
        }
        
        /// <summary>
        /// Computes a value from the key fields that uniquely identifies this entity instance.
        /// </summary>
        /// <returns>An object instance that uniquely identifies this entity instance.</returns>
        public override object GetIdentity()
        {
            return this._id;
        }
    }
    
    /// <summary>
    /// The 'Pohlavi' entity class.
    /// </summary>
    [DataContract(Namespace="http://schemas.datacontract.org/2004/07/ComboBoxDemo.Web")]
    public sealed partial class Pohlavi : Entity
    {
        
        private int _id;
        
        private string _nazev;
        
        private string[] _openAccessGenerated;
        
        #region Extensibility Method Definitions

        /// <summary>
        /// This method is invoked from the constructor once initialization is complete and
        /// can be used for further object setup.
        /// </summary>
        partial void OnCreated();
        partial void OnIDChanging(int value);
        partial void OnIDChanged();
        partial void OnNazevChanging(string value);
        partial void OnNazevChanged();
        partial void OnOpenAccessGeneratedChanging(string[] value);
        partial void OnOpenAccessGeneratedChanged();

        #endregion
        
        
        /// <summary>
        /// Initializes a new instance of the <see cref="Pohlavi"/> class.
        /// </summary>
        public Pohlavi()
        {
            this.OnCreated();
        }
        
        /// <summary>
        /// Gets or sets the 'ID' value.
        /// </summary>
        [ConcurrencyCheck()]
        [DataMember()]
        [Editable(false, AllowInitialValue=true)]
        [Key()]
        [RoundtripOriginal()]
        public int ID
        {
            get
            {
                return this._id;
            }
            set
            {
                if ((this._id != value))
                {
                    this.OnIDChanging(value);
                    this.ValidateProperty("ID", value);
                    this._id = value;
                    this.RaisePropertyChanged("ID");
                    this.OnIDChanged();
                }
            }
        }
        
        /// <summary>
        /// Gets or sets the 'Nazev' value.
        /// </summary>
        [ConcurrencyCheck()]
        [DataMember()]
        [Required()]
        [RoundtripOriginal()]
        [StringLength(50)]
        public string Nazev
        {
            get
            {
                return this._nazev;
            }
            set
            {
                if ((this._nazev != value))
                {
                    this.OnNazevChanging(value);
                    this.RaiseDataMemberChanging("Nazev");
                    this.ValidateProperty("Nazev", value);
                    this._nazev = value;
                    this.RaiseDataMemberChanged("Nazev");
                    this.OnNazevChanged();
                }
            }
        }
        
        /// <summary>
        /// Gets or sets the 'OpenAccessGenerated' value.
        /// </summary>
        [DataMember()]
        [Display(AutoGenerateField=false, AutoGenerateFilter=false, Description="OpenAccess Key", Name="-ID-")]
        [Editable(false)]
        [ReadOnly(true)]
        [RoundtripOriginal()]
        public string[] OpenAccessGenerated
        {
            get
            {
                return this._openAccessGenerated;
            }
            set
            {
                if ((this._openAccessGenerated != value))
                {
                    this.OnOpenAccessGeneratedChanging(value);
                    this.ValidateProperty("OpenAccessGenerated", value);
                    this._openAccessGenerated = value;
                    this.RaisePropertyChanged("OpenAccessGenerated");
                    this.OnOpenAccessGeneratedChanged();
                }
            }
        }
        
        /// <summary>
        /// Computes a value from the key fields that uniquely identifies this entity instance.
        /// </summary>
        /// <returns>An object instance that uniquely identifies this entity instance.</returns>
        public override object GetIdentity()
        {
            return this._id;
        }
    }
}
