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

using global::System.Linq;

namespace LightSwitchApplication.Implementation
{
    
    [global::System.ServiceModel.DomainServices.Hosting.EnableClientAccess()]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.LightSwitch.BuildTasks.CodeGen", "10.0.0.0")]
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    public class ApplicationDataDomainService
        : global::Microsoft.LightSwitch.ServerGenerated.Implementation.DomainService<global::ApplicationData.Implementation.ApplicationDataObjectContext>
    {
    
        public ApplicationDataDomainService() : base()
        {
        }
    
    #region Public Methods
    
    #region Teilnehmer
    
        public void InsertTeilnehmer(global::ApplicationData.Implementation.Teilnehmer entity)
        {
            if (entity.EntityState != global::System.Data.EntityState.Detached)
            {
                this.ObjectContext.ObjectStateManager.ChangeObjectState(entity, global::System.Data.EntityState.Added);
            }
            else
            {
                this.ObjectContext.Teilnehmer.AddObject(entity);
            }
        }
    
        public void UpdateTeilnehmer(global::ApplicationData.Implementation.Teilnehmer currentEntity)
        {
            global::System.ServiceModel.DomainServices.EntityFramework.ObjectContextExtensions.AttachAsModified(this.ObjectContext.Teilnehmer, currentEntity, this.ChangeSet.GetOriginal(currentEntity));
        }
    
        public void DeleteTeilnehmer(global::ApplicationData.Implementation.Teilnehmer entity)
        {
            if (entity.EntityState == global::System.Data.EntityState.Detached)
            {
                this.ObjectContext.Teilnehmer.Attach(entity);
            }
    
            this.DeleteEntity(entity);
        }
    #endregion
    
    #region Schulung
    
        public void InsertSchulung(global::ApplicationData.Implementation.Schulung entity)
        {
            if (entity.EntityState != global::System.Data.EntityState.Detached)
            {
                this.ObjectContext.ObjectStateManager.ChangeObjectState(entity, global::System.Data.EntityState.Added);
            }
            else
            {
                this.ObjectContext.Schulungen.AddObject(entity);
            }
        }
    
        public void UpdateSchulung(global::ApplicationData.Implementation.Schulung currentEntity)
        {
            global::System.ServiceModel.DomainServices.EntityFramework.ObjectContextExtensions.AttachAsModified(this.ObjectContext.Schulungen, currentEntity, this.ChangeSet.GetOriginal(currentEntity));
        }
    
        public void DeleteSchulung(global::ApplicationData.Implementation.Schulung entity)
        {
            if (entity.EntityState == global::System.Data.EntityState.Detached)
            {
                this.ObjectContext.Schulungen.Attach(entity);
            }
    
            this.DeleteEntity(entity);
        }
    #endregion
    
    #region Referent
    
        public void InsertReferent(global::ApplicationData.Implementation.Referent entity)
        {
            if (entity.EntityState != global::System.Data.EntityState.Detached)
            {
                this.ObjectContext.ObjectStateManager.ChangeObjectState(entity, global::System.Data.EntityState.Added);
            }
            else
            {
                this.ObjectContext.Referenten.AddObject(entity);
            }
        }
    
        public void UpdateReferent(global::ApplicationData.Implementation.Referent currentEntity)
        {
            global::System.ServiceModel.DomainServices.EntityFramework.ObjectContextExtensions.AttachAsModified(this.ObjectContext.Referenten, currentEntity, this.ChangeSet.GetOriginal(currentEntity));
        }
    
        public void DeleteReferent(global::ApplicationData.Implementation.Referent entity)
        {
            if (entity.EntityState == global::System.Data.EntityState.Detached)
            {
                this.ObjectContext.Referenten.Attach(entity);
            }
    
            this.DeleteEntity(entity);
        }
    #endregion
    
    #region TeilnehmerSchulungen
    
        public void InsertTeilnehmerSchulungen(global::ApplicationData.Implementation.TeilnehmerSchulungen entity)
        {
            if (entity.EntityState != global::System.Data.EntityState.Detached)
            {
                this.ObjectContext.ObjectStateManager.ChangeObjectState(entity, global::System.Data.EntityState.Added);
            }
            else
            {
                this.ObjectContext.TeilnehmerSchulungen.AddObject(entity);
            }
        }
    
        public void UpdateTeilnehmerSchulungen(global::ApplicationData.Implementation.TeilnehmerSchulungen currentEntity)
        {
            global::System.ServiceModel.DomainServices.EntityFramework.ObjectContextExtensions.AttachAsModified(this.ObjectContext.TeilnehmerSchulungen, currentEntity, this.ChangeSet.GetOriginal(currentEntity));
        }
    
        public void DeleteTeilnehmerSchulungen(global::ApplicationData.Implementation.TeilnehmerSchulungen entity)
        {
            if (entity.EntityState == global::System.Data.EntityState.Detached)
            {
                this.ObjectContext.TeilnehmerSchulungen.Attach(entity);
            }
    
            this.DeleteEntity(entity);
        }
    #endregion
    
    #region Queries
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Teilnehmer> Teilnehmer_Single(string frameworkOperators, global::System.Nullable<int> Id)
        {
            return this.GetQuery<global::ApplicationData.Implementation.Teilnehmer>("Teilnehmer_Single", frameworkOperators, Id);
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Teilnehmer> Teilnehmer_SingleOrDefault(string frameworkOperators, global::System.Nullable<int> Id)
        {
            return this.GetQuery<global::ApplicationData.Implementation.Teilnehmer>("Teilnehmer_SingleOrDefault", frameworkOperators, Id);
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Teilnehmer> Teilnehmer_All(string frameworkOperators)
        {
            return this.GetQuery<global::ApplicationData.Implementation.Teilnehmer>("Teilnehmer_All", frameworkOperators);
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> Schulungen_Single(string frameworkOperators, global::System.Nullable<int> Id)
        {
            return this.GetQuery<global::ApplicationData.Implementation.Schulung>("Schulungen_Single", frameworkOperators, Id);
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> Schulungen_SingleOrDefault(string frameworkOperators, global::System.Nullable<int> Id)
        {
            return this.GetQuery<global::ApplicationData.Implementation.Schulung>("Schulungen_SingleOrDefault", frameworkOperators, Id);
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> Schulungen_All(string frameworkOperators)
        {
            return this.GetQuery<global::ApplicationData.Implementation.Schulung>("Schulungen_All", frameworkOperators);
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Referent> Referenten_Single(string frameworkOperators, global::System.Nullable<int> Id)
        {
            return this.GetQuery<global::ApplicationData.Implementation.Referent>("Referenten_Single", frameworkOperators, Id);
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Referent> Referenten_SingleOrDefault(string frameworkOperators, global::System.Nullable<int> Id)
        {
            return this.GetQuery<global::ApplicationData.Implementation.Referent>("Referenten_SingleOrDefault", frameworkOperators, Id);
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Referent> Referenten_All(string frameworkOperators)
        {
            return this.GetQuery<global::ApplicationData.Implementation.Referent>("Referenten_All", frameworkOperators);
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.TeilnehmerSchulungen> TeilnehmerSchulungen_Single(string frameworkOperators, global::System.Nullable<int> Id)
        {
            return this.GetQuery<global::ApplicationData.Implementation.TeilnehmerSchulungen>("TeilnehmerSchulungen_Single", frameworkOperators, Id);
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.TeilnehmerSchulungen> TeilnehmerSchulungen_SingleOrDefault(string frameworkOperators, global::System.Nullable<int> Id)
        {
            return this.GetQuery<global::ApplicationData.Implementation.TeilnehmerSchulungen>("TeilnehmerSchulungen_SingleOrDefault", frameworkOperators, Id);
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.TeilnehmerSchulungen> TeilnehmerSchulungen_All(string frameworkOperators)
        {
            return this.GetQuery<global::ApplicationData.Implementation.TeilnehmerSchulungen>("TeilnehmerSchulungen_All", frameworkOperators);
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> SchulungenInDerZukunft(string frameworkOperators)
        {
            return this.GetQuery<global::ApplicationData.Implementation.Schulung>("SchulungenInDerZukunft", frameworkOperators);
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> SchulungImZeitraum(string frameworkOperators, global::System.Nullable<global::System.DateTime> Beginn, global::System.Nullable<global::System.DateTime> Ende)
        {
            return this.GetQuery<global::ApplicationData.Implementation.Schulung>("SchulungImZeitraum", frameworkOperators, Beginn, Ende);
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> SchulungenMitWenigerAls3Teilnehmern(string frameworkOperators)
        {
            return this.GetQuery<global::ApplicationData.Implementation.Schulung>("SchulungenMitWenigerAls3Teilnehmern", frameworkOperators);
        }
    
    #endregion
    
        [global::System.ServiceModel.DomainServices.Server.Invoke(HasSideEffects=false)]
        public int __GetEntitySetCanInformation(string entitySetName)
        {
            return base.GetEntitySetCanInformation(entitySetName);
        }
    
        [global::System.ServiceModel.DomainServices.Server.Invoke(HasSideEffects=false)]
        public bool __CanExecuteOperation(string operationName)
        {
            return base.CanExecuteOperation(operationName);
        }
    
    #endregion
    
        protected override global::Microsoft.LightSwitch.IDataService CreateDataService()
        {
            return new global::LightSwitchApplication.DataWorkspace().ApplicationData;
        }
    
    }
    
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.LightSwitch.BuildTasks.CodeGen", "10.0.0.0")]
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    public class ApplicationDataServiceImplementation
        : global::Microsoft.LightSwitch.ServerGenerated.Implementation.DataServiceImplementation<global::ApplicationData.Implementation.ApplicationDataObjectContext>
    {
        public ApplicationDataServiceImplementation(global::Microsoft.LightSwitch.IDataService dataService) : base(dataService)
        {
        }
    
    #region Queries
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Teilnehmer> Teilnehmer_Single(global::System.Nullable<int> Id)
        {
            global::System.Linq.IQueryable<global::ApplicationData.Implementation.Teilnehmer> query;
            query = global::System.Linq.Queryable.Where(
                this.GetQuery<global::ApplicationData.Implementation.Teilnehmer>("Teilnehmer_All"),
                (t) => (Id.HasValue && (t.Id == Id)));
            return query;
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Teilnehmer> Teilnehmer_SingleOrDefault(global::System.Nullable<int> Id)
        {
            global::System.Linq.IQueryable<global::ApplicationData.Implementation.Teilnehmer> query;
            query = global::System.Linq.Queryable.Where(
                this.GetQuery<global::ApplicationData.Implementation.Teilnehmer>("Teilnehmer_All"),
                (t) => (Id.HasValue && (t.Id == Id)));
            return query;
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Teilnehmer> Teilnehmer_All()
        {
            global::System.Linq.IQueryable<global::ApplicationData.Implementation.Teilnehmer> query;
            query = base.CreateQuery<global::ApplicationData.Implementation.Teilnehmer>("[Teilnehmer]").AsQueryable();
            return query;
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> Schulungen_Single(global::System.Nullable<int> Id)
        {
            global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> query;
            query = global::System.Linq.Queryable.Where(
                this.GetQuery<global::ApplicationData.Implementation.Schulung>("Schulungen_All"),
                (s) => (Id.HasValue && (s.Id == Id)));
            return query;
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> Schulungen_SingleOrDefault(global::System.Nullable<int> Id)
        {
            global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> query;
            query = global::System.Linq.Queryable.Where(
                this.GetQuery<global::ApplicationData.Implementation.Schulung>("Schulungen_All"),
                (s) => (Id.HasValue && (s.Id == Id)));
            return query;
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> Schulungen_All()
        {
            global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> query;
            query = base.CreateQuery<global::ApplicationData.Implementation.Schulung>("[Schulungen]").AsQueryable();
            return query;
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Referent> Referenten_Single(global::System.Nullable<int> Id)
        {
            global::System.Linq.IQueryable<global::ApplicationData.Implementation.Referent> query;
            query = global::System.Linq.Queryable.Where(
                this.GetQuery<global::ApplicationData.Implementation.Referent>("Referenten_All"),
                (r) => (Id.HasValue && (r.Id == Id)));
            return query;
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Referent> Referenten_SingleOrDefault(global::System.Nullable<int> Id)
        {
            global::System.Linq.IQueryable<global::ApplicationData.Implementation.Referent> query;
            query = global::System.Linq.Queryable.Where(
                this.GetQuery<global::ApplicationData.Implementation.Referent>("Referenten_All"),
                (r) => (Id.HasValue && (r.Id == Id)));
            return query;
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Referent> Referenten_All()
        {
            global::System.Linq.IQueryable<global::ApplicationData.Implementation.Referent> query;
            query = base.CreateQuery<global::ApplicationData.Implementation.Referent>("[Referenten]").AsQueryable();
            return query;
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.TeilnehmerSchulungen> TeilnehmerSchulungen_Single(global::System.Nullable<int> Id)
        {
            global::System.Linq.IQueryable<global::ApplicationData.Implementation.TeilnehmerSchulungen> query;
            query = global::System.Linq.Queryable.Where(
                this.GetQuery<global::ApplicationData.Implementation.TeilnehmerSchulungen>("TeilnehmerSchulungen_All"),
                (t) => (Id.HasValue && (t.Id == Id)));
            return query;
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.TeilnehmerSchulungen> TeilnehmerSchulungen_SingleOrDefault(global::System.Nullable<int> Id)
        {
            global::System.Linq.IQueryable<global::ApplicationData.Implementation.TeilnehmerSchulungen> query;
            query = global::System.Linq.Queryable.Where(
                this.GetQuery<global::ApplicationData.Implementation.TeilnehmerSchulungen>("TeilnehmerSchulungen_All"),
                (t) => (Id.HasValue && (t.Id == Id)));
            return query;
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.TeilnehmerSchulungen> TeilnehmerSchulungen_All()
        {
            global::System.Linq.IQueryable<global::ApplicationData.Implementation.TeilnehmerSchulungen> query;
            query = base.CreateQuery<global::ApplicationData.Implementation.TeilnehmerSchulungen>("[TeilnehmerSchulungen]").AsQueryable();
            return query;
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> SchulungenInDerZukunft()
        {
            global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> query;
            global::System.DateTime now1 = global::Microsoft.LightSwitch.RelativeDates.Now();
            query = global::System.Linq.Queryable.Where(
                this.GetQuery<global::ApplicationData.Implementation.Schulung>("Schulungen_All"),
                (s) => (s.Beginn >= now1));
            return query;
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> SchulungImZeitraum(global::System.Nullable<global::System.DateTime> Beginn, global::System.Nullable<global::System.DateTime> Ende)
        {
            global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> query;
            query = global::System.Linq.Queryable.OrderBy(
                global::System.Linq.Queryable.Where(
                    this.GetQuery<global::ApplicationData.Implementation.Schulung>("Schulungen_All"),
                    (s) => ((Beginn.HasValue && (s.Beginn >= Beginn)) && (Ende.HasValue && (s.Ende <= Ende)))),
                (s) => s.Beginn);
            return query;
        }
    
        public global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> SchulungenMitWenigerAls3Teilnehmern()
        {
            global::System.Linq.IQueryable<global::ApplicationData.Implementation.Schulung> query;
            query = this.GetQuery<global::ApplicationData.Implementation.Schulung>("Schulungen_All");
            return query;
        }
    
    #endregion

    #region Protected Methods
        protected override object CreateObject(global::System.Type type)
        {
            if (type == typeof(global::ApplicationData.Implementation.Teilnehmer))
            {
                return new global::ApplicationData.Implementation.Teilnehmer();
            }
            if (type == typeof(global::ApplicationData.Implementation.Schulung))
            {
                return new global::ApplicationData.Implementation.Schulung();
            }
            if (type == typeof(global::ApplicationData.Implementation.Referent))
            {
                return new global::ApplicationData.Implementation.Referent();
            }
            if (type == typeof(global::ApplicationData.Implementation.TeilnehmerSchulungen))
            {
                return new global::ApplicationData.Implementation.TeilnehmerSchulungen();
            }
    
            return base.CreateObject(type);
        }
    
        protected override global::ApplicationData.Implementation.ApplicationDataObjectContext CreateObjectContext()
        {
            return new global::ApplicationData.Implementation.ApplicationDataObjectContext(base.GetEntityConnectionString(
                "_IntrinsicData", 
                "res://*/ApplicationData.csdl|res://*/ApplicationData.ssdl|res://*/ApplicationData.msl",
                "System.Data.SqlClient"));
        }
    
        protected override global::Microsoft.LightSwitch.Internal.IEntityImplementation CreateEntityImplementation<T>()
        {
            if (typeof(T) == typeof(global::LightSwitchApplication.Teilnehmer))
            {
                return new global::ApplicationData.Implementation.Teilnehmer();
            }
            if (typeof(T) == typeof(global::LightSwitchApplication.Schulung))
            {
                return new global::ApplicationData.Implementation.Schulung();
            }
            if (typeof(T) == typeof(global::LightSwitchApplication.Referent))
            {
                return new global::ApplicationData.Implementation.Referent();
            }
            if (typeof(T) == typeof(global::LightSwitchApplication.TeilnehmerSchulungen))
            {
                return new global::ApplicationData.Implementation.TeilnehmerSchulungen();
            }
            return null;
        }
    
    #endregion
    
    }
    
    #region DataServiceImplementationFactory
    [global::System.ComponentModel.Composition.PartCreationPolicy(global::System.ComponentModel.Composition.CreationPolicy.Shared)]
    [global::System.ComponentModel.Composition.Export(typeof(global::Microsoft.LightSwitch.Internal.IDataServiceFactory))]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.LightSwitch.BuildTasks.CodeGen", "10.0.0.0")]
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    public class DataServiceFactory :
        global::Microsoft.LightSwitch.ServerGenerated.Implementation.DataServiceFactory
    {
    
        protected override global::Microsoft.LightSwitch.IDataService CreateDataService(global::System.Type dataServiceType)
        {
            if (dataServiceType == typeof(global::LightSwitchApplication.ApplicationData))
            {
                return new global::LightSwitchApplication.ApplicationDataService();
            }
            return base.CreateDataService(dataServiceType);
        }
    
        protected override global::Microsoft.LightSwitch.Internal.IDataServiceImplementation CreateDataServiceImplementation<TDataService>(TDataService dataService)
        {
            if (typeof(TDataService) == typeof(global::LightSwitchApplication.ApplicationData))
            {
                return new global::LightSwitchApplication.Implementation.ApplicationDataServiceImplementation(dataService);
            }
            return base.CreateDataServiceImplementation(dataService);
        }
    }
    #endregion
    
    [global::System.ComponentModel.Composition.PartCreationPolicy(global::System.ComponentModel.Composition.CreationPolicy.Shared)]
    [global::System.ComponentModel.Composition.Export(typeof(global::Microsoft.LightSwitch.Internal.ITypeMappingProvider))]
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.LightSwitch.BuildTasks.CodeGen", "10.0.0.0")]
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    public class __TypeMapping
        : global::Microsoft.LightSwitch.Internal.ITypeMappingProvider
    {
        global::System.Type global::Microsoft.LightSwitch.Internal.ITypeMappingProvider.GetImplementationType(global::System.Type definitionType)
        {
            if (typeof(global::LightSwitchApplication.Teilnehmer) == definitionType)
            {
                return typeof(global::ApplicationData.Implementation.Teilnehmer);
            }
            if (typeof(global::LightSwitchApplication.Schulung) == definitionType)
            {
                return typeof(global::ApplicationData.Implementation.Schulung);
            }
            if (typeof(global::LightSwitchApplication.Referent) == definitionType)
            {
                return typeof(global::ApplicationData.Implementation.Referent);
            }
            if (typeof(global::LightSwitchApplication.TeilnehmerSchulungen) == definitionType)
            {
                return typeof(global::ApplicationData.Implementation.TeilnehmerSchulungen);
            }
            return null;
        }
    }
}

namespace ApplicationData.Implementation
{

    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.LightSwitch.BuildTasks.CodeGen", "10.0.0.0")]
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    public partial class Teilnehmer :
        global::LightSwitchApplication.Teilnehmer.DetailsClass.IImplementation
    {
    
        global::System.Collections.IEnumerable global::LightSwitchApplication.Teilnehmer.DetailsClass.IImplementation.TeilnehmerSchulungen
        {
            get
            {
                return this.TeilnehmerSchulungen;
            }
        }
        
        #region IEntityImplementation Members
        private global::Microsoft.LightSwitch.Internal.IEntityImplementationHost __host;
        
        global::Microsoft.LightSwitch.Internal.IEntityImplementationHost global::Microsoft.LightSwitch.Internal.IEntityImplementation.Host
        {
            get
            {
                return this.__host;
            }
        }
        
        void global::Microsoft.LightSwitch.Internal.IEntityImplementation.Initialize(global::Microsoft.LightSwitch.Internal.IEntityImplementationHost host)
        {
            this.__host = host;
        }
        
        protected override void OnPropertyChanged(string propertyName)
        {
            base.OnPropertyChanged(propertyName);
            if (this.__host != null)
            {
                this.__host.RaisePropertyChanged(propertyName);
            }
        }
        #endregion
    }
    
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.LightSwitch.BuildTasks.CodeGen", "10.0.0.0")]
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.ComponentModel.DataAnnotations.MetadataType(typeof(global::ApplicationData.Implementation.Schulung.Metadata))]
    public partial class Schulung :
        global::LightSwitchApplication.Schulung.DetailsClass.IImplementation
    {
    
        global::Microsoft.LightSwitch.Internal.IEntityImplementation global::LightSwitchApplication.Schulung.DetailsClass.IImplementation.Referent
        {
            get
            {
                return this.Referent;
            }
            set
            {
                this.Referent = (global::ApplicationData.Implementation.Referent)value;
                if (this.__host != null)
                {
                    this.__host.RaisePropertyChanged("Referent");
                }
            }
        }
        
        partial void OnReferent_SchulungChanged()
        {
            if (this.__host != null)
            {
                this.__host.RaisePropertyChanged("Referent");
            }
        }
        
        global::System.Collections.IEnumerable global::LightSwitchApplication.Schulung.DetailsClass.IImplementation.TeilnehmerSchulungen
        {
            get
            {
                return this.TeilnehmerSchulungen;
            }
        }
        
        #region IEntityImplementation Members
        private global::Microsoft.LightSwitch.Internal.IEntityImplementationHost __host;
        
        global::Microsoft.LightSwitch.Internal.IEntityImplementationHost global::Microsoft.LightSwitch.Internal.IEntityImplementation.Host
        {
            get
            {
                return this.__host;
            }
        }
        
        void global::Microsoft.LightSwitch.Internal.IEntityImplementation.Initialize(global::Microsoft.LightSwitch.Internal.IEntityImplementationHost host)
        {
            this.__host = host;
        }
        
        protected override void OnPropertyChanged(string propertyName)
        {
            base.OnPropertyChanged(propertyName);
            if (this.__host != null)
            {
                this.__host.RaisePropertyChanged(propertyName);
            }
        }
        #endregion
        
        internal class Metadata
        {
            [global::System.ServiceModel.DomainServices.Server.Include]
            public global::ApplicationData.Implementation.Referent Referent { get; set; }
        
        }
    }
    
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.LightSwitch.BuildTasks.CodeGen", "10.0.0.0")]
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    public partial class Referent :
        global::LightSwitchApplication.Referent.DetailsClass.IImplementation
    {
    
        global::System.Collections.IEnumerable global::LightSwitchApplication.Referent.DetailsClass.IImplementation.Schulungen
        {
            get
            {
                return this.Schulungen;
            }
        }
        
        #region IEntityImplementation Members
        private global::Microsoft.LightSwitch.Internal.IEntityImplementationHost __host;
        
        global::Microsoft.LightSwitch.Internal.IEntityImplementationHost global::Microsoft.LightSwitch.Internal.IEntityImplementation.Host
        {
            get
            {
                return this.__host;
            }
        }
        
        void global::Microsoft.LightSwitch.Internal.IEntityImplementation.Initialize(global::Microsoft.LightSwitch.Internal.IEntityImplementationHost host)
        {
            this.__host = host;
        }
        
        protected override void OnPropertyChanged(string propertyName)
        {
            base.OnPropertyChanged(propertyName);
            if (this.__host != null)
            {
                this.__host.RaisePropertyChanged(propertyName);
            }
        }
        #endregion
    }
    
    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.LightSwitch.BuildTasks.CodeGen", "10.0.0.0")]
    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
    [global::System.ComponentModel.DataAnnotations.MetadataType(typeof(global::ApplicationData.Implementation.TeilnehmerSchulungen.Metadata))]
    public partial class TeilnehmerSchulungen :
        global::LightSwitchApplication.TeilnehmerSchulungen.DetailsClass.IImplementation
    {
    
        global::Microsoft.LightSwitch.Internal.IEntityImplementation global::LightSwitchApplication.TeilnehmerSchulungen.DetailsClass.IImplementation.Schulung
        {
            get
            {
                return this.Schulung;
            }
            set
            {
                this.Schulung = (global::ApplicationData.Implementation.Schulung)value;
                if (this.__host != null)
                {
                    this.__host.RaisePropertyChanged("Schulung");
                }
            }
        }
        
        partial void OnTeilnehmerSchulungen_SchulungChanged()
        {
            if (this.__host != null)
            {
                this.__host.RaisePropertyChanged("Schulung");
            }
        }
        
        global::Microsoft.LightSwitch.Internal.IEntityImplementation global::LightSwitchApplication.TeilnehmerSchulungen.DetailsClass.IImplementation.Teilnehmer
        {
            get
            {
                return this.Teilnehmer;
            }
            set
            {
                this.Teilnehmer = (global::ApplicationData.Implementation.Teilnehmer)value;
                if (this.__host != null)
                {
                    this.__host.RaisePropertyChanged("Teilnehmer");
                }
            }
        }
        
        partial void OnTeilnehmerSchulungen_TeilnehmerChanged()
        {
            if (this.__host != null)
            {
                this.__host.RaisePropertyChanged("Teilnehmer");
            }
        }
        
        #region IEntityImplementation Members
        private global::Microsoft.LightSwitch.Internal.IEntityImplementationHost __host;
        
        global::Microsoft.LightSwitch.Internal.IEntityImplementationHost global::Microsoft.LightSwitch.Internal.IEntityImplementation.Host
        {
            get
            {
                return this.__host;
            }
        }
        
        void global::Microsoft.LightSwitch.Internal.IEntityImplementation.Initialize(global::Microsoft.LightSwitch.Internal.IEntityImplementationHost host)
        {
            this.__host = host;
        }
        
        protected override void OnPropertyChanged(string propertyName)
        {
            base.OnPropertyChanged(propertyName);
            if (this.__host != null)
            {
                this.__host.RaisePropertyChanged(propertyName);
            }
        }
        #endregion
        
        internal class Metadata
        {
            [global::System.ServiceModel.DomainServices.Server.Include]
            public global::ApplicationData.Implementation.Schulung Schulung { get; set; }
        
            [global::System.ServiceModel.DomainServices.Server.Include]
            public global::ApplicationData.Implementation.Teilnehmer Teilnehmer { get; set; }
        
        }
    }
    
}

