//------------------------------------------------------------------------------
// <auto-generated>
//    This code was generated from a template.
//
//    Manual changes to this file may cause unexpected behavior in your application.
//    Manual changes to this file will be overwritten if the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

using System;
using System.Data.Objects;
using System.Data.Objects.DataClasses;
using System.Data.EntityClient;
using System.ComponentModel;
using System.Xml.Serialization;
using System.Runtime.Serialization;

[assembly: EdmSchemaAttribute()]
#region EDM Relationship Metadata

[assembly: EdmRelationshipAttribute("ApplicationData", "Referent_Schulung", "Referent", System.Data.Metadata.Edm.RelationshipMultiplicity.One, typeof(ApplicationData.Implementation.Referent), "Schulung", System.Data.Metadata.Edm.RelationshipMultiplicity.Many, typeof(ApplicationData.Implementation.Schulung), true)]
[assembly: EdmRelationshipAttribute("ApplicationData", "TeilnehmerSchulungen_Schulung", "Schulung", System.Data.Metadata.Edm.RelationshipMultiplicity.One, typeof(ApplicationData.Implementation.Schulung), "TeilnehmerSchulungen", System.Data.Metadata.Edm.RelationshipMultiplicity.Many, typeof(ApplicationData.Implementation.TeilnehmerSchulungen), true)]
[assembly: EdmRelationshipAttribute("ApplicationData", "TeilnehmerSchulungen_Teilnehmer", "Teilnehmer", System.Data.Metadata.Edm.RelationshipMultiplicity.One, typeof(ApplicationData.Implementation.Teilnehmer), "TeilnehmerSchulungen", System.Data.Metadata.Edm.RelationshipMultiplicity.Many, typeof(ApplicationData.Implementation.TeilnehmerSchulungen), true)]

#endregion

namespace ApplicationData.Implementation
{
    #region Contexts
    
    /// <summary>
    /// No Metadata Documentation available.
    /// </summary>
    public partial class ApplicationDataObjectContext : ObjectContext
    {
        #region Constructors
    
        /// <summary>
        /// Initializes a new ApplicationDataObjectContext object using the connection string found in the 'ApplicationDataObjectContext' section of the application configuration file.
        /// </summary>
        public ApplicationDataObjectContext() : base("name=ApplicationDataObjectContext", "ApplicationDataObjectContext")
        {
            OnContextCreated();
        }
    
        /// <summary>
        /// Initialize a new ApplicationDataObjectContext object.
        /// </summary>
        public ApplicationDataObjectContext(string connectionString) : base(connectionString, "ApplicationDataObjectContext")
        {
            OnContextCreated();
        }
    
        /// <summary>
        /// Initialize a new ApplicationDataObjectContext object.
        /// </summary>
        public ApplicationDataObjectContext(EntityConnection connection) : base(connection, "ApplicationDataObjectContext")
        {
            OnContextCreated();
        }
    
        #endregion
    
        #region Partial Methods
    
        partial void OnContextCreated();
    
        #endregion
    
        #region ObjectSet Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<Teilnehmer> Teilnehmer
        {
            get
            {
                if ((_Teilnehmer == null))
                {
                    _Teilnehmer = base.CreateObjectSet<Teilnehmer>("Teilnehmer");
                }
                return _Teilnehmer;
            }
        }
        private ObjectSet<Teilnehmer> _Teilnehmer;
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<Schulung> Schulungen
        {
            get
            {
                if ((_Schulungen == null))
                {
                    _Schulungen = base.CreateObjectSet<Schulung>("Schulungen");
                }
                return _Schulungen;
            }
        }
        private ObjectSet<Schulung> _Schulungen;
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<Referent> Referenten
        {
            get
            {
                if ((_Referenten == null))
                {
                    _Referenten = base.CreateObjectSet<Referent>("Referenten");
                }
                return _Referenten;
            }
        }
        private ObjectSet<Referent> _Referenten;
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<TeilnehmerSchulungen> TeilnehmerSchulungen
        {
            get
            {
                if ((_TeilnehmerSchulungen == null))
                {
                    _TeilnehmerSchulungen = base.CreateObjectSet<TeilnehmerSchulungen>("TeilnehmerSchulungen");
                }
                return _TeilnehmerSchulungen;
            }
        }
        private ObjectSet<TeilnehmerSchulungen> _TeilnehmerSchulungen;

        #endregion
        #region AddTo Methods
    
        /// <summary>
        /// Deprecated Method for adding a new object to the Teilnehmer EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddToTeilnehmer(Teilnehmer teilnehmer)
        {
            base.AddObject("Teilnehmer", teilnehmer);
        }
    
        /// <summary>
        /// Deprecated Method for adding a new object to the Schulungen EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddToSchulungen(Schulung schulung)
        {
            base.AddObject("Schulungen", schulung);
        }
    
        /// <summary>
        /// Deprecated Method for adding a new object to the Referenten EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddToReferenten(Referent referent)
        {
            base.AddObject("Referenten", referent);
        }
    
        /// <summary>
        /// Deprecated Method for adding a new object to the TeilnehmerSchulungen EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddToTeilnehmerSchulungen(TeilnehmerSchulungen teilnehmerSchulungen)
        {
            base.AddObject("TeilnehmerSchulungen", teilnehmerSchulungen);
        }

        #endregion
    }
    

    #endregion
    
    #region Entities
    
    /// <summary>
    /// No Metadata Documentation available.
    /// </summary>
    [EdmEntityTypeAttribute(NamespaceName="ApplicationData", Name="Referent")]
    [Serializable()]
    [DataContractAttribute(IsReference=true)]
    public partial class Referent : EntityObject
    {
        #region Factory Method
    
        /// <summary>
        /// Create a new Referent object.
        /// </summary>
        /// <param name="id">Initial value of the Id property.</param>
        /// <param name="name">Initial value of the Name property.</param>
        /// <param name="vorname">Initial value of the Vorname property.</param>
        /// <param name="eMail">Initial value of the EMail property.</param>
        /// <param name="referentenart">Initial value of the Referentenart property.</param>
        /// <param name="istMVP">Initial value of the IstMVP property.</param>
        public static Referent CreateReferent(global::System.Int32 id, global::System.String name, global::System.String vorname, global::System.String eMail, global::System.String referentenart, global::System.Boolean istMVP)
        {
            Referent referent = new Referent();
            referent.Id = id;
            referent.Name = name;
            referent.Vorname = vorname;
            referent.EMail = eMail;
            referent.Referentenart = referentenart;
            referent.IstMVP = istMVP;
            return referent;
        }

        #endregion
        #region Primitive Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.Int32 Id
        {
            get
            {
                return _Id;
            }
            set
            {
                if (_Id != value)
                {
                    OnIdChanging(value);
                    ReportPropertyChanging("Id");
                    _Id = StructuralObject.SetValidValue(value);
                    ReportPropertyChanged("Id");
                    OnIdChanged();
                }
            }
        }
        private global::System.Int32 _Id;
        partial void OnIdChanging(global::System.Int32 value);
        partial void OnIdChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.String Name
        {
            get
            {
                return _Name;
            }
            set
            {
                OnNameChanging(value);
                ReportPropertyChanging("Name");
                _Name = StructuralObject.SetValidValue(value, false);
                ReportPropertyChanged("Name");
                OnNameChanged();
            }
        }
        private global::System.String _Name;
        partial void OnNameChanging(global::System.String value);
        partial void OnNameChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.String Vorname
        {
            get
            {
                return _Vorname;
            }
            set
            {
                OnVornameChanging(value);
                ReportPropertyChanging("Vorname");
                _Vorname = StructuralObject.SetValidValue(value, false);
                ReportPropertyChanged("Vorname");
                OnVornameChanged();
            }
        }
        private global::System.String _Vorname;
        partial void OnVornameChanging(global::System.String value);
        partial void OnVornameChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.String EMail
        {
            get
            {
                return _EMail;
            }
            set
            {
                OnEMailChanging(value);
                ReportPropertyChanging("EMail");
                _EMail = StructuralObject.SetValidValue(value, false);
                ReportPropertyChanged("EMail");
                OnEMailChanged();
            }
        }
        private global::System.String _EMail;
        partial void OnEMailChanging(global::System.String value);
        partial void OnEMailChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.Byte[] Foto
        {
            get
            {
                return StructuralObject.GetValidValue(_Foto);
            }
            set
            {
                OnFotoChanging(value);
                ReportPropertyChanging("Foto");
                _Foto = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("Foto");
                OnFotoChanged();
            }
        }
        private global::System.Byte[] _Foto;
        partial void OnFotoChanging(global::System.Byte[] value);
        partial void OnFotoChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.DateTime> Geburtstag
        {
            get
            {
                return _Geburtstag;
            }
            set
            {
                OnGeburtstagChanging(value);
                ReportPropertyChanging("Geburtstag");
                _Geburtstag = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("Geburtstag");
                OnGeburtstagChanged();
            }
        }
        private Nullable<global::System.DateTime> _Geburtstag;
        partial void OnGeburtstagChanging(Nullable<global::System.DateTime> value);
        partial void OnGeburtstagChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String Telefon
        {
            get
            {
                return _Telefon;
            }
            set
            {
                OnTelefonChanging(value);
                ReportPropertyChanging("Telefon");
                _Telefon = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("Telefon");
                OnTelefonChanged();
            }
        }
        private global::System.String _Telefon;
        partial void OnTelefonChanging(global::System.String value);
        partial void OnTelefonChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.String Referentenart
        {
            get
            {
                return _Referentenart;
            }
            set
            {
                OnReferentenartChanging(value);
                ReportPropertyChanging("Referentenart");
                _Referentenart = StructuralObject.SetValidValue(value, false);
                ReportPropertyChanged("Referentenart");
                OnReferentenartChanged();
            }
        }
        private global::System.String _Referentenart;
        partial void OnReferentenartChanging(global::System.String value);
        partial void OnReferentenartChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.Boolean IstMVP
        {
            get
            {
                return _IstMVP;
            }
            set
            {
                OnIstMVPChanging(value);
                ReportPropertyChanging("IstMVP");
                _IstMVP = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("IstMVP");
                OnIstMVPChanged();
            }
        }
        private global::System.Boolean _IstMVP;
        partial void OnIstMVPChanging(global::System.Boolean value);
        partial void OnIstMVPChanged();

        #endregion
    
        #region Navigation Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [XmlIgnoreAttribute()]
        [SoapIgnoreAttribute()]
        [DataMemberAttribute()]
        [EdmRelationshipNavigationPropertyAttribute("ApplicationData", "Referent_Schulung", "Schulung")]
        public EntityCollection<Schulung> Schulungen
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedCollection<Schulung>("ApplicationData.Referent_Schulung", "Schulung");
            }
            set
            {
                if ((value != null))
                {
                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedCollection<Schulung>("ApplicationData.Referent_Schulung", "Schulung", value);
                }
            }
        }

        #endregion
    }
    
    /// <summary>
    /// No Metadata Documentation available.
    /// </summary>
    [EdmEntityTypeAttribute(NamespaceName="ApplicationData", Name="Schulung")]
    [Serializable()]
    [DataContractAttribute(IsReference=true)]
    public partial class Schulung : EntityObject
    {
        #region Factory Method
    
        /// <summary>
        /// Create a new Schulung object.
        /// </summary>
        /// <param name="id">Initial value of the Id property.</param>
        /// <param name="schulungsthema">Initial value of the Schulungsthema property.</param>
        /// <param name="beginn">Initial value of the Beginn property.</param>
        /// <param name="ende">Initial value of the Ende property.</param>
        /// <param name="preis">Initial value of the Preis property.</param>
        /// <param name="referent_Schulung">Initial value of the Referent_Schulung property.</param>
        public static Schulung CreateSchulung(global::System.Int32 id, global::System.String schulungsthema, global::System.DateTime beginn, global::System.DateTime ende, global::System.Decimal preis, global::System.Int32 referent_Schulung)
        {
            Schulung schulung = new Schulung();
            schulung.Id = id;
            schulung.Schulungsthema = schulungsthema;
            schulung.Beginn = beginn;
            schulung.Ende = ende;
            schulung.Preis = preis;
            schulung.Referent_Schulung = referent_Schulung;
            return schulung;
        }

        #endregion
        #region Primitive Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.Int32 Id
        {
            get
            {
                return _Id;
            }
            set
            {
                if (_Id != value)
                {
                    OnIdChanging(value);
                    ReportPropertyChanging("Id");
                    _Id = StructuralObject.SetValidValue(value);
                    ReportPropertyChanged("Id");
                    OnIdChanged();
                }
            }
        }
        private global::System.Int32 _Id;
        partial void OnIdChanging(global::System.Int32 value);
        partial void OnIdChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.String Schulungsthema
        {
            get
            {
                return _Schulungsthema;
            }
            set
            {
                OnSchulungsthemaChanging(value);
                ReportPropertyChanging("Schulungsthema");
                _Schulungsthema = StructuralObject.SetValidValue(value, false);
                ReportPropertyChanged("Schulungsthema");
                OnSchulungsthemaChanged();
            }
        }
        private global::System.String _Schulungsthema;
        partial void OnSchulungsthemaChanging(global::System.String value);
        partial void OnSchulungsthemaChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.DateTime Beginn
        {
            get
            {
                return _Beginn;
            }
            set
            {
                OnBeginnChanging(value);
                ReportPropertyChanging("Beginn");
                _Beginn = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("Beginn");
                OnBeginnChanged();
            }
        }
        private global::System.DateTime _Beginn;
        partial void OnBeginnChanging(global::System.DateTime value);
        partial void OnBeginnChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.DateTime Ende
        {
            get
            {
                return _Ende;
            }
            set
            {
                OnEndeChanging(value);
                ReportPropertyChanging("Ende");
                _Ende = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("Ende");
                OnEndeChanged();
            }
        }
        private global::System.DateTime _Ende;
        partial void OnEndeChanging(global::System.DateTime value);
        partial void OnEndeChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.Decimal Preis
        {
            get
            {
                return _Preis;
            }
            set
            {
                OnPreisChanging(value);
                ReportPropertyChanging("Preis");
                _Preis = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("Preis");
                OnPreisChanged();
            }
        }
        private global::System.Decimal _Preis;
        partial void OnPreisChanging(global::System.Decimal value);
        partial void OnPreisChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String Beschreibung
        {
            get
            {
                return _Beschreibung;
            }
            set
            {
                OnBeschreibungChanging(value);
                ReportPropertyChanging("Beschreibung");
                _Beschreibung = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("Beschreibung");
                OnBeschreibungChanged();
            }
        }
        private global::System.String _Beschreibung;
        partial void OnBeschreibungChanging(global::System.String value);
        partial void OnBeschreibungChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.Int32 Referent_Schulung
        {
            get
            {
                return _Referent_Schulung;
            }
            set
            {
                OnReferent_SchulungChanging(value);
                ReportPropertyChanging("Referent_Schulung");
                _Referent_Schulung = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("Referent_Schulung");
                OnReferent_SchulungChanged();
            }
        }
        private global::System.Int32 _Referent_Schulung;
        partial void OnReferent_SchulungChanging(global::System.Int32 value);
        partial void OnReferent_SchulungChanged();

        #endregion
    
        #region Navigation Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [XmlIgnoreAttribute()]
        [SoapIgnoreAttribute()]
        [DataMemberAttribute()]
        [EdmRelationshipNavigationPropertyAttribute("ApplicationData", "Referent_Schulung", "Referent")]
        public Referent Referent
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Referent>("ApplicationData.Referent_Schulung", "Referent").Value;
            }
            set
            {
                ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Referent>("ApplicationData.Referent_Schulung", "Referent").Value = value;
            }
        }
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [BrowsableAttribute(false)]
        [DataMemberAttribute()]
        public EntityReference<Referent> ReferentReference
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Referent>("ApplicationData.Referent_Schulung", "Referent");
            }
            set
            {
                if ((value != null))
                {
                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedReference<Referent>("ApplicationData.Referent_Schulung", "Referent", value);
                }
            }
        }
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [XmlIgnoreAttribute()]
        [SoapIgnoreAttribute()]
        [DataMemberAttribute()]
        [EdmRelationshipNavigationPropertyAttribute("ApplicationData", "TeilnehmerSchulungen_Schulung", "TeilnehmerSchulungen")]
        public EntityCollection<TeilnehmerSchulungen> TeilnehmerSchulungen
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedCollection<TeilnehmerSchulungen>("ApplicationData.TeilnehmerSchulungen_Schulung", "TeilnehmerSchulungen");
            }
            set
            {
                if ((value != null))
                {
                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedCollection<TeilnehmerSchulungen>("ApplicationData.TeilnehmerSchulungen_Schulung", "TeilnehmerSchulungen", value);
                }
            }
        }

        #endregion
    }
    
    /// <summary>
    /// No Metadata Documentation available.
    /// </summary>
    [EdmEntityTypeAttribute(NamespaceName="ApplicationData", Name="Teilnehmer")]
    [Serializable()]
    [DataContractAttribute(IsReference=true)]
    public partial class Teilnehmer : EntityObject
    {
        #region Factory Method
    
        /// <summary>
        /// Create a new Teilnehmer object.
        /// </summary>
        /// <param name="id">Initial value of the Id property.</param>
        /// <param name="vorname">Initial value of the Vorname property.</param>
        /// <param name="name">Initial value of the Name property.</param>
        public static Teilnehmer CreateTeilnehmer(global::System.Int32 id, global::System.String vorname, global::System.String name)
        {
            Teilnehmer teilnehmer = new Teilnehmer();
            teilnehmer.Id = id;
            teilnehmer.Vorname = vorname;
            teilnehmer.Name = name;
            return teilnehmer;
        }

        #endregion
        #region Primitive Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.Int32 Id
        {
            get
            {
                return _Id;
            }
            set
            {
                if (_Id != value)
                {
                    OnIdChanging(value);
                    ReportPropertyChanging("Id");
                    _Id = StructuralObject.SetValidValue(value);
                    ReportPropertyChanged("Id");
                    OnIdChanged();
                }
            }
        }
        private global::System.Int32 _Id;
        partial void OnIdChanging(global::System.Int32 value);
        partial void OnIdChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.String Vorname
        {
            get
            {
                return _Vorname;
            }
            set
            {
                OnVornameChanging(value);
                ReportPropertyChanging("Vorname");
                _Vorname = StructuralObject.SetValidValue(value, false);
                ReportPropertyChanged("Vorname");
                OnVornameChanged();
            }
        }
        private global::System.String _Vorname;
        partial void OnVornameChanging(global::System.String value);
        partial void OnVornameChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.String Name
        {
            get
            {
                return _Name;
            }
            set
            {
                OnNameChanging(value);
                ReportPropertyChanging("Name");
                _Name = StructuralObject.SetValidValue(value, false);
                ReportPropertyChanged("Name");
                OnNameChanged();
            }
        }
        private global::System.String _Name;
        partial void OnNameChanging(global::System.String value);
        partial void OnNameChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String Firma
        {
            get
            {
                return _Firma;
            }
            set
            {
                OnFirmaChanging(value);
                ReportPropertyChanging("Firma");
                _Firma = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("Firma");
                OnFirmaChanged();
            }
        }
        private global::System.String _Firma;
        partial void OnFirmaChanging(global::System.String value);
        partial void OnFirmaChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String EMail
        {
            get
            {
                return _EMail;
            }
            set
            {
                OnEMailChanging(value);
                ReportPropertyChanging("EMail");
                _EMail = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("EMail");
                OnEMailChanged();
            }
        }
        private global::System.String _EMail;
        partial void OnEMailChanging(global::System.String value);
        partial void OnEMailChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String Telefon
        {
            get
            {
                return _Telefon;
            }
            set
            {
                OnTelefonChanging(value);
                ReportPropertyChanging("Telefon");
                _Telefon = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("Telefon");
                OnTelefonChanged();
            }
        }
        private global::System.String _Telefon;
        partial void OnTelefonChanging(global::System.String value);
        partial void OnTelefonChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String Strasse
        {
            get
            {
                return _Strasse;
            }
            set
            {
                OnStrasseChanging(value);
                ReportPropertyChanging("Strasse");
                _Strasse = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("Strasse");
                OnStrasseChanged();
            }
        }
        private global::System.String _Strasse;
        partial void OnStrasseChanging(global::System.String value);
        partial void OnStrasseChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String PLZ
        {
            get
            {
                return _PLZ;
            }
            set
            {
                OnPLZChanging(value);
                ReportPropertyChanging("PLZ");
                _PLZ = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("PLZ");
                OnPLZChanged();
            }
        }
        private global::System.String _PLZ;
        partial void OnPLZChanging(global::System.String value);
        partial void OnPLZChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String Ort
        {
            get
            {
                return _Ort;
            }
            set
            {
                OnOrtChanging(value);
                ReportPropertyChanging("Ort");
                _Ort = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("Ort");
                OnOrtChanged();
            }
        }
        private global::System.String _Ort;
        partial void OnOrtChanging(global::System.String value);
        partial void OnOrtChanged();

        #endregion
    
        #region Navigation Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [XmlIgnoreAttribute()]
        [SoapIgnoreAttribute()]
        [DataMemberAttribute()]
        [EdmRelationshipNavigationPropertyAttribute("ApplicationData", "TeilnehmerSchulungen_Teilnehmer", "TeilnehmerSchulungen")]
        public EntityCollection<TeilnehmerSchulungen> TeilnehmerSchulungen
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedCollection<TeilnehmerSchulungen>("ApplicationData.TeilnehmerSchulungen_Teilnehmer", "TeilnehmerSchulungen");
            }
            set
            {
                if ((value != null))
                {
                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedCollection<TeilnehmerSchulungen>("ApplicationData.TeilnehmerSchulungen_Teilnehmer", "TeilnehmerSchulungen", value);
                }
            }
        }

        #endregion
    }
    
    /// <summary>
    /// No Metadata Documentation available.
    /// </summary>
    [EdmEntityTypeAttribute(NamespaceName="ApplicationData", Name="TeilnehmerSchulungen")]
    [Serializable()]
    [DataContractAttribute(IsReference=true)]
    public partial class TeilnehmerSchulungen : EntityObject
    {
        #region Factory Method
    
        /// <summary>
        /// Create a new TeilnehmerSchulungen object.
        /// </summary>
        /// <param name="id">Initial value of the Id property.</param>
        /// <param name="teilnehmerSchulungen_Schulung">Initial value of the TeilnehmerSchulungen_Schulung property.</param>
        /// <param name="teilnehmerSchulungen_Teilnehmer">Initial value of the TeilnehmerSchulungen_Teilnehmer property.</param>
        public static TeilnehmerSchulungen CreateTeilnehmerSchulungen(global::System.Int32 id, global::System.Int32 teilnehmerSchulungen_Schulung, global::System.Int32 teilnehmerSchulungen_Teilnehmer)
        {
            TeilnehmerSchulungen teilnehmerSchulungen = new TeilnehmerSchulungen();
            teilnehmerSchulungen.Id = id;
            teilnehmerSchulungen.TeilnehmerSchulungen_Schulung = teilnehmerSchulungen_Schulung;
            teilnehmerSchulungen.TeilnehmerSchulungen_Teilnehmer = teilnehmerSchulungen_Teilnehmer;
            return teilnehmerSchulungen;
        }

        #endregion
        #region Primitive Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.Int32 Id
        {
            get
            {
                return _Id;
            }
            set
            {
                if (_Id != value)
                {
                    OnIdChanging(value);
                    ReportPropertyChanging("Id");
                    _Id = StructuralObject.SetValidValue(value);
                    ReportPropertyChanged("Id");
                    OnIdChanged();
                }
            }
        }
        private global::System.Int32 _Id;
        partial void OnIdChanging(global::System.Int32 value);
        partial void OnIdChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.Int32 TeilnehmerSchulungen_Schulung
        {
            get
            {
                return _TeilnehmerSchulungen_Schulung;
            }
            set
            {
                OnTeilnehmerSchulungen_SchulungChanging(value);
                ReportPropertyChanging("TeilnehmerSchulungen_Schulung");
                _TeilnehmerSchulungen_Schulung = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("TeilnehmerSchulungen_Schulung");
                OnTeilnehmerSchulungen_SchulungChanged();
            }
        }
        private global::System.Int32 _TeilnehmerSchulungen_Schulung;
        partial void OnTeilnehmerSchulungen_SchulungChanging(global::System.Int32 value);
        partial void OnTeilnehmerSchulungen_SchulungChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.Int32 TeilnehmerSchulungen_Teilnehmer
        {
            get
            {
                return _TeilnehmerSchulungen_Teilnehmer;
            }
            set
            {
                OnTeilnehmerSchulungen_TeilnehmerChanging(value);
                ReportPropertyChanging("TeilnehmerSchulungen_Teilnehmer");
                _TeilnehmerSchulungen_Teilnehmer = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("TeilnehmerSchulungen_Teilnehmer");
                OnTeilnehmerSchulungen_TeilnehmerChanged();
            }
        }
        private global::System.Int32 _TeilnehmerSchulungen_Teilnehmer;
        partial void OnTeilnehmerSchulungen_TeilnehmerChanging(global::System.Int32 value);
        partial void OnTeilnehmerSchulungen_TeilnehmerChanged();

        #endregion
    
        #region Navigation Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [XmlIgnoreAttribute()]
        [SoapIgnoreAttribute()]
        [DataMemberAttribute()]
        [EdmRelationshipNavigationPropertyAttribute("ApplicationData", "TeilnehmerSchulungen_Schulung", "Schulung")]
        public Schulung Schulung
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Schulung>("ApplicationData.TeilnehmerSchulungen_Schulung", "Schulung").Value;
            }
            set
            {
                ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Schulung>("ApplicationData.TeilnehmerSchulungen_Schulung", "Schulung").Value = value;
            }
        }
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [BrowsableAttribute(false)]
        [DataMemberAttribute()]
        public EntityReference<Schulung> SchulungReference
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Schulung>("ApplicationData.TeilnehmerSchulungen_Schulung", "Schulung");
            }
            set
            {
                if ((value != null))
                {
                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedReference<Schulung>("ApplicationData.TeilnehmerSchulungen_Schulung", "Schulung", value);
                }
            }
        }
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [XmlIgnoreAttribute()]
        [SoapIgnoreAttribute()]
        [DataMemberAttribute()]
        [EdmRelationshipNavigationPropertyAttribute("ApplicationData", "TeilnehmerSchulungen_Teilnehmer", "Teilnehmer")]
        public Teilnehmer Teilnehmer
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Teilnehmer>("ApplicationData.TeilnehmerSchulungen_Teilnehmer", "Teilnehmer").Value;
            }
            set
            {
                ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Teilnehmer>("ApplicationData.TeilnehmerSchulungen_Teilnehmer", "Teilnehmer").Value = value;
            }
        }
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [BrowsableAttribute(false)]
        [DataMemberAttribute()]
        public EntityReference<Teilnehmer> TeilnehmerReference
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Teilnehmer>("ApplicationData.TeilnehmerSchulungen_Teilnehmer", "Teilnehmer");
            }
            set
            {
                if ((value != null))
                {
                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedReference<Teilnehmer>("ApplicationData.TeilnehmerSchulungen_Teilnehmer", "Teilnehmer", value);
                }
            }
        }

        #endregion
    }

    #endregion
    
}
