//------------------------------------------------------------------------------
// <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.ComponentModel;
using System.Data.EntityClient;
using System.Data.Objects;
using System.Data.Objects.DataClasses;
using System.Linq;
using System.Runtime.Serialization;
using System.Xml.Serialization;

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

[assembly: EdmRelationshipAttribute("StarterSiteModel", "webpages_UsersInRoles", "webpages_Roles", System.Data.Metadata.Edm.RelationshipMultiplicity.Many, typeof(StarterSiteModel.webpages_Roles), "UserProfile", System.Data.Metadata.Edm.RelationshipMultiplicity.Many, typeof(StarterSiteModel.UserProfile))]
[assembly: EdmRelationshipAttribute("StarterSiteModel", "CollectionCollectionPhoto", "Collection", System.Data.Metadata.Edm.RelationshipMultiplicity.One, typeof(StarterSiteModel.Collection), "CollectionPhoto", System.Data.Metadata.Edm.RelationshipMultiplicity.Many, typeof(StarterSiteModel.CollectionPhoto), true)]
[assembly: EdmRelationshipAttribute("StarterSiteModel", "AccessoriesTypeAccessory", "AccessoriesType", System.Data.Metadata.Edm.RelationshipMultiplicity.One, typeof(StarterSiteModel.AccessoriesType), "Accessory", System.Data.Metadata.Edm.RelationshipMultiplicity.Many, typeof(StarterSiteModel.Accessory), true)]
[assembly: EdmRelationshipAttribute("StarterSiteModel", "AccessoryAccessoriesPhoto", "Accessory", System.Data.Metadata.Edm.RelationshipMultiplicity.One, typeof(StarterSiteModel.Accessory), "AccessoriesPhoto", System.Data.Metadata.Edm.RelationshipMultiplicity.Many, typeof(StarterSiteModel.AccessoriesPhoto), true)]
[assembly: EdmRelationshipAttribute("StarterSiteModel", "ShopCountryShopLocation", "ShopCountry", System.Data.Metadata.Edm.RelationshipMultiplicity.One, typeof(StarterSiteModel.ShopCountry), "ShopLocation", System.Data.Metadata.Edm.RelationshipMultiplicity.Many, typeof(StarterSiteModel.ShopLocation), true)]
[assembly: EdmRelationshipAttribute("StarterSiteModel", "ShopCityShopLocation", "ShopCity", System.Data.Metadata.Edm.RelationshipMultiplicity.One, typeof(StarterSiteModel.ShopCity), "ShopLocation", System.Data.Metadata.Edm.RelationshipMultiplicity.Many, typeof(StarterSiteModel.ShopLocation), true)]
[assembly: EdmRelationshipAttribute("StarterSiteModel", "PressTypePressCategory", "PressType", System.Data.Metadata.Edm.RelationshipMultiplicity.One, typeof(StarterSiteModel.PressType), "PressCategory", System.Data.Metadata.Edm.RelationshipMultiplicity.Many, typeof(StarterSiteModel.PressCategory), true)]

#endregion

namespace StarterSiteModel
{
    #region Contexts
    
    /// <summary>
    /// No Metadata Documentation available.
    /// </summary>
    public partial class StarterSiteEntities : ObjectContext
    {
        #region Constructors
    
        /// <summary>
        /// Initializes a new StarterSiteEntities object using the connection string found in the 'StarterSiteEntities' section of the application configuration file.
        /// </summary>
        public StarterSiteEntities() : base("name=StarterSiteEntities", "StarterSiteEntities")
        {
            this.ContextOptions.LazyLoadingEnabled = true;
            OnContextCreated();
        }
    
        /// <summary>
        /// Initialize a new StarterSiteEntities object.
        /// </summary>
        public StarterSiteEntities(string connectionString) : base(connectionString, "StarterSiteEntities")
        {
            this.ContextOptions.LazyLoadingEnabled = true;
            OnContextCreated();
        }
    
        /// <summary>
        /// Initialize a new StarterSiteEntities object.
        /// </summary>
        public StarterSiteEntities(EntityConnection connection) : base(connection, "StarterSiteEntities")
        {
            this.ContextOptions.LazyLoadingEnabled = true;
            OnContextCreated();
        }
    
        #endregion
    
        #region Partial Methods
    
        partial void OnContextCreated();
    
        #endregion
    
        #region ObjectSet Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<Collection> Collections
        {
            get
            {
                if ((_Collections == null))
                {
                    _Collections = base.CreateObjectSet<Collection>("Collections");
                }
                return _Collections;
            }
        }
        private ObjectSet<Collection> _Collections;
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<UserProfile> UserProfiles
        {
            get
            {
                if ((_UserProfiles == null))
                {
                    _UserProfiles = base.CreateObjectSet<UserProfile>("UserProfiles");
                }
                return _UserProfiles;
            }
        }
        private ObjectSet<UserProfile> _UserProfiles;
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<webpages_Membership> webpages_Membership
        {
            get
            {
                if ((_webpages_Membership == null))
                {
                    _webpages_Membership = base.CreateObjectSet<webpages_Membership>("webpages_Membership");
                }
                return _webpages_Membership;
            }
        }
        private ObjectSet<webpages_Membership> _webpages_Membership;
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<webpages_Roles> webpages_Roles
        {
            get
            {
                if ((_webpages_Roles == null))
                {
                    _webpages_Roles = base.CreateObjectSet<webpages_Roles>("webpages_Roles");
                }
                return _webpages_Roles;
            }
        }
        private ObjectSet<webpages_Roles> _webpages_Roles;
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<CollectionPhoto> CollectionPhotoes
        {
            get
            {
                if ((_CollectionPhotoes == null))
                {
                    _CollectionPhotoes = base.CreateObjectSet<CollectionPhoto>("CollectionPhotoes");
                }
                return _CollectionPhotoes;
            }
        }
        private ObjectSet<CollectionPhoto> _CollectionPhotoes;
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<Accessory> Accessories
        {
            get
            {
                if ((_Accessories == null))
                {
                    _Accessories = base.CreateObjectSet<Accessory>("Accessories");
                }
                return _Accessories;
            }
        }
        private ObjectSet<Accessory> _Accessories;
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<AccessoriesType> AccessoriesTypes
        {
            get
            {
                if ((_AccessoriesTypes == null))
                {
                    _AccessoriesTypes = base.CreateObjectSet<AccessoriesType>("AccessoriesTypes");
                }
                return _AccessoriesTypes;
            }
        }
        private ObjectSet<AccessoriesType> _AccessoriesTypes;
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<AccessoriesPhoto> AccessoriesPhotoes
        {
            get
            {
                if ((_AccessoriesPhotoes == null))
                {
                    _AccessoriesPhotoes = base.CreateObjectSet<AccessoriesPhoto>("AccessoriesPhotoes");
                }
                return _AccessoriesPhotoes;
            }
        }
        private ObjectSet<AccessoriesPhoto> _AccessoriesPhotoes;
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<ShopCity> ShopCities
        {
            get
            {
                if ((_ShopCities == null))
                {
                    _ShopCities = base.CreateObjectSet<ShopCity>("ShopCities");
                }
                return _ShopCities;
            }
        }
        private ObjectSet<ShopCity> _ShopCities;
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<ShopCountry> ShopCountries
        {
            get
            {
                if ((_ShopCountries == null))
                {
                    _ShopCountries = base.CreateObjectSet<ShopCountry>("ShopCountries");
                }
                return _ShopCountries;
            }
        }
        private ObjectSet<ShopCountry> _ShopCountries;
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<ShopLocation> ShopLocations
        {
            get
            {
                if ((_ShopLocations == null))
                {
                    _ShopLocations = base.CreateObjectSet<ShopLocation>("ShopLocations");
                }
                return _ShopLocations;
            }
        }
        private ObjectSet<ShopLocation> _ShopLocations;
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<PressType> PressTypes
        {
            get
            {
                if ((_PressTypes == null))
                {
                    _PressTypes = base.CreateObjectSet<PressType>("PressTypes");
                }
                return _PressTypes;
            }
        }
        private ObjectSet<PressType> _PressTypes;
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<PressCategory> PressCategories
        {
            get
            {
                if ((_PressCategories == null))
                {
                    _PressCategories = base.CreateObjectSet<PressCategory>("PressCategories");
                }
                return _PressCategories;
            }
        }
        private ObjectSet<PressCategory> _PressCategories;
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        public ObjectSet<WebSetting> WebSettings
        {
            get
            {
                if ((_WebSettings == null))
                {
                    _WebSettings = base.CreateObjectSet<WebSetting>("WebSettings");
                }
                return _WebSettings;
            }
        }
        private ObjectSet<WebSetting> _WebSettings;

        #endregion

        #region AddTo Methods
    
        /// <summary>
        /// Deprecated Method for adding a new object to the Collections EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddToCollections(Collection collection)
        {
            base.AddObject("Collections", collection);
        }
    
        /// <summary>
        /// Deprecated Method for adding a new object to the UserProfiles EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddToUserProfiles(UserProfile userProfile)
        {
            base.AddObject("UserProfiles", userProfile);
        }
    
        /// <summary>
        /// Deprecated Method for adding a new object to the webpages_Membership EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddTowebpages_Membership(webpages_Membership webpages_Membership)
        {
            base.AddObject("webpages_Membership", webpages_Membership);
        }
    
        /// <summary>
        /// Deprecated Method for adding a new object to the webpages_Roles EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddTowebpages_Roles(webpages_Roles webpages_Roles)
        {
            base.AddObject("webpages_Roles", webpages_Roles);
        }
    
        /// <summary>
        /// Deprecated Method for adding a new object to the CollectionPhotoes EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddToCollectionPhotoes(CollectionPhoto collectionPhoto)
        {
            base.AddObject("CollectionPhotoes", collectionPhoto);
        }
    
        /// <summary>
        /// Deprecated Method for adding a new object to the Accessories EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddToAccessories(Accessory accessory)
        {
            base.AddObject("Accessories", accessory);
        }
    
        /// <summary>
        /// Deprecated Method for adding a new object to the AccessoriesTypes EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddToAccessoriesTypes(AccessoriesType accessoriesType)
        {
            base.AddObject("AccessoriesTypes", accessoriesType);
        }
    
        /// <summary>
        /// Deprecated Method for adding a new object to the AccessoriesPhotoes EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddToAccessoriesPhotoes(AccessoriesPhoto accessoriesPhoto)
        {
            base.AddObject("AccessoriesPhotoes", accessoriesPhoto);
        }
    
        /// <summary>
        /// Deprecated Method for adding a new object to the ShopCities EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddToShopCities(ShopCity shopCity)
        {
            base.AddObject("ShopCities", shopCity);
        }
    
        /// <summary>
        /// Deprecated Method for adding a new object to the ShopCountries EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddToShopCountries(ShopCountry shopCountry)
        {
            base.AddObject("ShopCountries", shopCountry);
        }
    
        /// <summary>
        /// Deprecated Method for adding a new object to the ShopLocations EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddToShopLocations(ShopLocation shopLocation)
        {
            base.AddObject("ShopLocations", shopLocation);
        }
    
        /// <summary>
        /// Deprecated Method for adding a new object to the PressTypes EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddToPressTypes(PressType pressType)
        {
            base.AddObject("PressTypes", pressType);
        }
    
        /// <summary>
        /// Deprecated Method for adding a new object to the PressCategories EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddToPressCategories(PressCategory pressCategory)
        {
            base.AddObject("PressCategories", pressCategory);
        }
    
        /// <summary>
        /// Deprecated Method for adding a new object to the WebSettings EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
        /// </summary>
        public void AddToWebSettings(WebSetting webSetting)
        {
            base.AddObject("WebSettings", webSetting);
        }

        #endregion

    }

    #endregion

    #region Entities
    
    /// <summary>
    /// No Metadata Documentation available.
    /// </summary>
    [EdmEntityTypeAttribute(NamespaceName="StarterSiteModel", Name="AccessoriesPhoto")]
    [Serializable()]
    [DataContractAttribute(IsReference=true)]
    public partial class AccessoriesPhoto : EntityObject
    {
        #region Factory Method
    
        /// <summary>
        /// Create a new AccessoriesPhoto object.
        /// </summary>
        /// <param name="id">Initial value of the Id property.</param>
        /// <param name="accessoriesId">Initial value of the AccessoriesId property.</param>
        public static AccessoriesPhoto CreateAccessoriesPhoto(global::System.Int32 id, global::System.Int32 accessoriesId)
        {
            AccessoriesPhoto accessoriesPhoto = new AccessoriesPhoto();
            accessoriesPhoto.Id = id;
            accessoriesPhoto.AccessoriesId = accessoriesId;
            return accessoriesPhoto;
        }

        #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 AccessoriesId
        {
            get
            {
                return _AccessoriesId;
            }
            set
            {
                OnAccessoriesIdChanging(value);
                ReportPropertyChanging("AccessoriesId");
                _AccessoriesId = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("AccessoriesId");
                OnAccessoriesIdChanged();
            }
        }
        private global::System.Int32 _AccessoriesId;
        partial void OnAccessoriesIdChanging(global::System.Int32 value);
        partial void OnAccessoriesIdChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String Description
        {
            get
            {
                return _Description;
            }
            set
            {
                OnDescriptionChanging(value);
                ReportPropertyChanging("Description");
                _Description = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("Description");
                OnDescriptionChanged();
            }
        }
        private global::System.String _Description;
        partial void OnDescriptionChanging(global::System.String value);
        partial void OnDescriptionChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.DateTime> CreateDate
        {
            get
            {
                return _CreateDate;
            }
            set
            {
                OnCreateDateChanging(value);
                ReportPropertyChanging("CreateDate");
                _CreateDate = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("CreateDate");
                OnCreateDateChanged();
            }
        }
        private Nullable<global::System.DateTime> _CreateDate;
        partial void OnCreateDateChanging(Nullable<global::System.DateTime> value);
        partial void OnCreateDateChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Boolean> IsActive
        {
            get
            {
                return _IsActive;
            }
            set
            {
                OnIsActiveChanging(value);
                ReportPropertyChanging("IsActive");
                _IsActive = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("IsActive");
                OnIsActiveChanged();
            }
        }
        private Nullable<global::System.Boolean> _IsActive;
        partial void OnIsActiveChanging(Nullable<global::System.Boolean> value);
        partial void OnIsActiveChanged();

        #endregion

    
        #region Navigation Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [XmlIgnoreAttribute()]
        [SoapIgnoreAttribute()]
        [DataMemberAttribute()]
        [EdmRelationshipNavigationPropertyAttribute("StarterSiteModel", "AccessoryAccessoriesPhoto", "Accessory")]
        public Accessory Accessory
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Accessory>("StarterSiteModel.AccessoryAccessoriesPhoto", "Accessory").Value;
            }
            set
            {
                ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Accessory>("StarterSiteModel.AccessoryAccessoriesPhoto", "Accessory").Value = value;
            }
        }
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [BrowsableAttribute(false)]
        [DataMemberAttribute()]
        public EntityReference<Accessory> AccessoryReference
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Accessory>("StarterSiteModel.AccessoryAccessoriesPhoto", "Accessory");
            }
            set
            {
                if ((value != null))
                {
                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedReference<Accessory>("StarterSiteModel.AccessoryAccessoriesPhoto", "Accessory", value);
                }
            }
        }

        #endregion

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

        #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=true)]
        [DataMemberAttribute()]
        public global::System.String AccessoriesTypeName
        {
            get
            {
                return _AccessoriesTypeName;
            }
            set
            {
                OnAccessoriesTypeNameChanging(value);
                ReportPropertyChanging("AccessoriesTypeName");
                _AccessoriesTypeName = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("AccessoriesTypeName");
                OnAccessoriesTypeNameChanged();
            }
        }
        private global::System.String _AccessoriesTypeName;
        partial void OnAccessoriesTypeNameChanging(global::System.String value);
        partial void OnAccessoriesTypeNameChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Int32> Ord
        {
            get
            {
                return _Ord;
            }
            set
            {
                OnOrdChanging(value);
                ReportPropertyChanging("Ord");
                _Ord = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("Ord");
                OnOrdChanged();
            }
        }
        private Nullable<global::System.Int32> _Ord;
        partial void OnOrdChanging(Nullable<global::System.Int32> value);
        partial void OnOrdChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Boolean> IsActive
        {
            get
            {
                return _IsActive;
            }
            set
            {
                OnIsActiveChanging(value);
                ReportPropertyChanging("IsActive");
                _IsActive = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("IsActive");
                OnIsActiveChanged();
            }
        }
        private Nullable<global::System.Boolean> _IsActive;
        partial void OnIsActiveChanging(Nullable<global::System.Boolean> value);
        partial void OnIsActiveChanged();

        #endregion

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

        #endregion

    }
    
    /// <summary>
    /// No Metadata Documentation available.
    /// </summary>
    [EdmEntityTypeAttribute(NamespaceName="StarterSiteModel", Name="Accessory")]
    [Serializable()]
    [DataContractAttribute(IsReference=true)]
    public partial class Accessory : EntityObject
    {
        #region Factory Method
    
        /// <summary>
        /// Create a new Accessory object.
        /// </summary>
        /// <param name="id">Initial value of the Id property.</param>
        /// <param name="accessoriesTypeId">Initial value of the AccessoriesTypeId property.</param>
        public static Accessory CreateAccessory(global::System.Int32 id, global::System.Int32 accessoriesTypeId)
        {
            Accessory accessory = new Accessory();
            accessory.Id = id;
            accessory.AccessoriesTypeId = accessoriesTypeId;
            return accessory;
        }

        #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 AccessoriesTypeId
        {
            get
            {
                return _AccessoriesTypeId;
            }
            set
            {
                OnAccessoriesTypeIdChanging(value);
                ReportPropertyChanging("AccessoriesTypeId");
                _AccessoriesTypeId = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("AccessoriesTypeId");
                OnAccessoriesTypeIdChanged();
            }
        }
        private global::System.Int32 _AccessoriesTypeId;
        partial void OnAccessoriesTypeIdChanging(global::System.Int32 value);
        partial void OnAccessoriesTypeIdChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String AccessoriesName
        {
            get
            {
                return _AccessoriesName;
            }
            set
            {
                OnAccessoriesNameChanging(value);
                ReportPropertyChanging("AccessoriesName");
                _AccessoriesName = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("AccessoriesName");
                OnAccessoriesNameChanged();
            }
        }
        private global::System.String _AccessoriesName;
        partial void OnAccessoriesNameChanging(global::System.String value);
        partial void OnAccessoriesNameChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Decimal> Price
        {
            get
            {
                return _Price;
            }
            set
            {
                OnPriceChanging(value);
                ReportPropertyChanging("Price");
                _Price = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("Price");
                OnPriceChanged();
            }
        }
        private Nullable<global::System.Decimal> _Price;
        partial void OnPriceChanging(Nullable<global::System.Decimal> value);
        partial void OnPriceChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.DateTime> CreateDate
        {
            get
            {
                return _CreateDate;
            }
            set
            {
                OnCreateDateChanging(value);
                ReportPropertyChanging("CreateDate");
                _CreateDate = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("CreateDate");
                OnCreateDateChanged();
            }
        }
        private Nullable<global::System.DateTime> _CreateDate;
        partial void OnCreateDateChanging(Nullable<global::System.DateTime> value);
        partial void OnCreateDateChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Boolean> IsActive
        {
            get
            {
                return _IsActive;
            }
            set
            {
                OnIsActiveChanging(value);
                ReportPropertyChanging("IsActive");
                _IsActive = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("IsActive");
                OnIsActiveChanged();
            }
        }
        private Nullable<global::System.Boolean> _IsActive;
        partial void OnIsActiveChanging(Nullable<global::System.Boolean> value);
        partial void OnIsActiveChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String Description
        {
            get
            {
                return _Description;
            }
            set
            {
                OnDescriptionChanging(value);
                ReportPropertyChanging("Description");
                _Description = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("Description");
                OnDescriptionChanged();
            }
        }
        private global::System.String _Description;
        partial void OnDescriptionChanging(global::System.String value);
        partial void OnDescriptionChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Boolean> IsNew
        {
            get
            {
                return _IsNew;
            }
            set
            {
                OnIsNewChanging(value);
                ReportPropertyChanging("IsNew");
                _IsNew = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("IsNew");
                OnIsNewChanged();
            }
        }
        private Nullable<global::System.Boolean> _IsNew;
        partial void OnIsNewChanging(Nullable<global::System.Boolean> value);
        partial void OnIsNewChanged();

        #endregion

    
        #region Navigation Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [XmlIgnoreAttribute()]
        [SoapIgnoreAttribute()]
        [DataMemberAttribute()]
        [EdmRelationshipNavigationPropertyAttribute("StarterSiteModel", "AccessoriesTypeAccessory", "AccessoriesType")]
        public AccessoriesType AccessoriesType
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<AccessoriesType>("StarterSiteModel.AccessoriesTypeAccessory", "AccessoriesType").Value;
            }
            set
            {
                ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<AccessoriesType>("StarterSiteModel.AccessoriesTypeAccessory", "AccessoriesType").Value = value;
            }
        }
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [BrowsableAttribute(false)]
        [DataMemberAttribute()]
        public EntityReference<AccessoriesType> AccessoriesTypeReference
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<AccessoriesType>("StarterSiteModel.AccessoriesTypeAccessory", "AccessoriesType");
            }
            set
            {
                if ((value != null))
                {
                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedReference<AccessoriesType>("StarterSiteModel.AccessoriesTypeAccessory", "AccessoriesType", value);
                }
            }
        }
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [XmlIgnoreAttribute()]
        [SoapIgnoreAttribute()]
        [DataMemberAttribute()]
        [EdmRelationshipNavigationPropertyAttribute("StarterSiteModel", "AccessoryAccessoriesPhoto", "AccessoriesPhoto")]
        public EntityCollection<AccessoriesPhoto> AccessoriesPhotoes
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedCollection<AccessoriesPhoto>("StarterSiteModel.AccessoryAccessoriesPhoto", "AccessoriesPhoto");
            }
            set
            {
                if ((value != null))
                {
                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedCollection<AccessoriesPhoto>("StarterSiteModel.AccessoryAccessoriesPhoto", "AccessoriesPhoto", value);
                }
            }
        }

        #endregion

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

        #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=true)]
        [DataMemberAttribute()]
        public global::System.String CollectionName
        {
            get
            {
                return _CollectionName;
            }
            set
            {
                OnCollectionNameChanging(value);
                ReportPropertyChanging("CollectionName");
                _CollectionName = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("CollectionName");
                OnCollectionNameChanged();
            }
        }
        private global::System.String _CollectionName;
        partial void OnCollectionNameChanging(global::System.String value);
        partial void OnCollectionNameChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Int32> ReleaseYear
        {
            get
            {
                return _ReleaseYear;
            }
            set
            {
                OnReleaseYearChanging(value);
                ReportPropertyChanging("ReleaseYear");
                _ReleaseYear = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("ReleaseYear");
                OnReleaseYearChanged();
            }
        }
        private Nullable<global::System.Int32> _ReleaseYear;
        partial void OnReleaseYearChanging(Nullable<global::System.Int32> value);
        partial void OnReleaseYearChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.DateTime> CreateDate
        {
            get
            {
                return _CreateDate;
            }
            set
            {
                OnCreateDateChanging(value);
                ReportPropertyChanging("CreateDate");
                _CreateDate = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("CreateDate");
                OnCreateDateChanged();
            }
        }
        private Nullable<global::System.DateTime> _CreateDate;
        partial void OnCreateDateChanging(Nullable<global::System.DateTime> value);
        partial void OnCreateDateChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Boolean> IsActive
        {
            get
            {
                return _IsActive;
            }
            set
            {
                OnIsActiveChanging(value);
                ReportPropertyChanging("IsActive");
                _IsActive = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("IsActive");
                OnIsActiveChanged();
            }
        }
        private Nullable<global::System.Boolean> _IsActive;
        partial void OnIsActiveChanging(Nullable<global::System.Boolean> value);
        partial void OnIsActiveChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Boolean> IsNew
        {
            get
            {
                return _IsNew;
            }
            set
            {
                OnIsNewChanging(value);
                ReportPropertyChanging("IsNew");
                _IsNew = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("IsNew");
                OnIsNewChanged();
            }
        }
        private Nullable<global::System.Boolean> _IsNew;
        partial void OnIsNewChanging(Nullable<global::System.Boolean> value);
        partial void OnIsNewChanged();

        #endregion

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

        #endregion

    }
    
    /// <summary>
    /// No Metadata Documentation available.
    /// </summary>
    [EdmEntityTypeAttribute(NamespaceName="StarterSiteModel", Name="CollectionPhoto")]
    [Serializable()]
    [DataContractAttribute(IsReference=true)]
    public partial class CollectionPhoto : EntityObject
    {
        #region Factory Method
    
        /// <summary>
        /// Create a new CollectionPhoto object.
        /// </summary>
        /// <param name="id">Initial value of the Id property.</param>
        /// <param name="collectionId">Initial value of the CollectionId property.</param>
        public static CollectionPhoto CreateCollectionPhoto(global::System.Int32 id, global::System.Int32 collectionId)
        {
            CollectionPhoto collectionPhoto = new CollectionPhoto();
            collectionPhoto.Id = id;
            collectionPhoto.CollectionId = collectionId;
            return collectionPhoto;
        }

        #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 CollectionId
        {
            get
            {
                return _CollectionId;
            }
            set
            {
                OnCollectionIdChanging(value);
                ReportPropertyChanging("CollectionId");
                _CollectionId = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("CollectionId");
                OnCollectionIdChanged();
            }
        }
        private global::System.Int32 _CollectionId;
        partial void OnCollectionIdChanging(global::System.Int32 value);
        partial void OnCollectionIdChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String Description
        {
            get
            {
                return _Description;
            }
            set
            {
                OnDescriptionChanging(value);
                ReportPropertyChanging("Description");
                _Description = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("Description");
                OnDescriptionChanged();
            }
        }
        private global::System.String _Description;
        partial void OnDescriptionChanging(global::System.String value);
        partial void OnDescriptionChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.DateTime> CreateDate
        {
            get
            {
                return _CreateDate;
            }
            set
            {
                OnCreateDateChanging(value);
                ReportPropertyChanging("CreateDate");
                _CreateDate = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("CreateDate");
                OnCreateDateChanged();
            }
        }
        private Nullable<global::System.DateTime> _CreateDate;
        partial void OnCreateDateChanging(Nullable<global::System.DateTime> value);
        partial void OnCreateDateChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Boolean> IsActive
        {
            get
            {
                return _IsActive;
            }
            set
            {
                OnIsActiveChanging(value);
                ReportPropertyChanging("IsActive");
                _IsActive = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("IsActive");
                OnIsActiveChanged();
            }
        }
        private Nullable<global::System.Boolean> _IsActive;
        partial void OnIsActiveChanging(Nullable<global::System.Boolean> value);
        partial void OnIsActiveChanged();

        #endregion

    
        #region Navigation Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [XmlIgnoreAttribute()]
        [SoapIgnoreAttribute()]
        [DataMemberAttribute()]
        [EdmRelationshipNavigationPropertyAttribute("StarterSiteModel", "CollectionCollectionPhoto", "Collection")]
        public Collection Collection
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Collection>("StarterSiteModel.CollectionCollectionPhoto", "Collection").Value;
            }
            set
            {
                ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Collection>("StarterSiteModel.CollectionCollectionPhoto", "Collection").Value = value;
            }
        }
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [BrowsableAttribute(false)]
        [DataMemberAttribute()]
        public EntityReference<Collection> CollectionReference
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<Collection>("StarterSiteModel.CollectionCollectionPhoto", "Collection");
            }
            set
            {
                if ((value != null))
                {
                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedReference<Collection>("StarterSiteModel.CollectionCollectionPhoto", "Collection", value);
                }
            }
        }

        #endregion

    }
    
    /// <summary>
    /// No Metadata Documentation available.
    /// </summary>
    [EdmEntityTypeAttribute(NamespaceName="StarterSiteModel", Name="PressCategory")]
    [Serializable()]
    [DataContractAttribute(IsReference=true)]
    public partial class PressCategory : EntityObject
    {
        #region Factory Method
    
        /// <summary>
        /// Create a new PressCategory object.
        /// </summary>
        /// <param name="id">Initial value of the Id property.</param>
        /// <param name="pressTypeId">Initial value of the PressTypeId property.</param>
        public static PressCategory CreatePressCategory(global::System.Int32 id, global::System.Int32 pressTypeId)
        {
            PressCategory pressCategory = new PressCategory();
            pressCategory.Id = id;
            pressCategory.PressTypeId = pressTypeId;
            return pressCategory;
        }

        #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 PressTypeId
        {
            get
            {
                return _PressTypeId;
            }
            set
            {
                OnPressTypeIdChanging(value);
                ReportPropertyChanging("PressTypeId");
                _PressTypeId = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("PressTypeId");
                OnPressTypeIdChanged();
            }
        }
        private global::System.Int32 _PressTypeId;
        partial void OnPressTypeIdChanging(global::System.Int32 value);
        partial void OnPressTypeIdChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String Name
        {
            get
            {
                return _Name;
            }
            set
            {
                OnNameChanging(value);
                ReportPropertyChanging("Name");
                _Name = StructuralObject.SetValidValue(value, true);
                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 Nullable<global::System.DateTime> CreateDate
        {
            get
            {
                return _CreateDate;
            }
            set
            {
                OnCreateDateChanging(value);
                ReportPropertyChanging("CreateDate");
                _CreateDate = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("CreateDate");
                OnCreateDateChanged();
            }
        }
        private Nullable<global::System.DateTime> _CreateDate;
        partial void OnCreateDateChanging(Nullable<global::System.DateTime> value);
        partial void OnCreateDateChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Boolean> IsActive
        {
            get
            {
                return _IsActive;
            }
            set
            {
                OnIsActiveChanging(value);
                ReportPropertyChanging("IsActive");
                _IsActive = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("IsActive");
                OnIsActiveChanged();
            }
        }
        private Nullable<global::System.Boolean> _IsActive;
        partial void OnIsActiveChanging(Nullable<global::System.Boolean> value);
        partial void OnIsActiveChanged();

        #endregion

    
        #region Navigation Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [XmlIgnoreAttribute()]
        [SoapIgnoreAttribute()]
        [DataMemberAttribute()]
        [EdmRelationshipNavigationPropertyAttribute("StarterSiteModel", "PressTypePressCategory", "PressType")]
        public PressType PressType
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<PressType>("StarterSiteModel.PressTypePressCategory", "PressType").Value;
            }
            set
            {
                ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<PressType>("StarterSiteModel.PressTypePressCategory", "PressType").Value = value;
            }
        }
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [BrowsableAttribute(false)]
        [DataMemberAttribute()]
        public EntityReference<PressType> PressTypeReference
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<PressType>("StarterSiteModel.PressTypePressCategory", "PressType");
            }
            set
            {
                if ((value != null))
                {
                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedReference<PressType>("StarterSiteModel.PressTypePressCategory", "PressType", value);
                }
            }
        }

        #endregion

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

        #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=true)]
        [DataMemberAttribute()]
        public global::System.String PressName
        {
            get
            {
                return _PressName;
            }
            set
            {
                OnPressNameChanging(value);
                ReportPropertyChanging("PressName");
                _PressName = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("PressName");
                OnPressNameChanged();
            }
        }
        private global::System.String _PressName;
        partial void OnPressNameChanging(global::System.String value);
        partial void OnPressNameChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Boolean> IsActive
        {
            get
            {
                return _IsActive;
            }
            set
            {
                OnIsActiveChanging(value);
                ReportPropertyChanging("IsActive");
                _IsActive = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("IsActive");
                OnIsActiveChanged();
            }
        }
        private Nullable<global::System.Boolean> _IsActive;
        partial void OnIsActiveChanging(Nullable<global::System.Boolean> value);
        partial void OnIsActiveChanged();

        #endregion

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

        #endregion

    }
    
    /// <summary>
    /// No Metadata Documentation available.
    /// </summary>
    [EdmEntityTypeAttribute(NamespaceName="StarterSiteModel", Name="ShopCity")]
    [Serializable()]
    [DataContractAttribute(IsReference=true)]
    public partial class ShopCity : EntityObject
    {
        #region Factory Method
    
        /// <summary>
        /// Create a new ShopCity object.
        /// </summary>
        /// <param name="id">Initial value of the Id property.</param>
        /// <param name="shopCountryId">Initial value of the ShopCountryId property.</param>
        public static ShopCity CreateShopCity(global::System.Int32 id, global::System.Int32 shopCountryId)
        {
            ShopCity shopCity = new ShopCity();
            shopCity.Id = id;
            shopCity.ShopCountryId = shopCountryId;
            return shopCity;
        }

        #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 ShopCountryId
        {
            get
            {
                return _ShopCountryId;
            }
            set
            {
                OnShopCountryIdChanging(value);
                ReportPropertyChanging("ShopCountryId");
                _ShopCountryId = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("ShopCountryId");
                OnShopCountryIdChanged();
            }
        }
        private global::System.Int32 _ShopCountryId;
        partial void OnShopCountryIdChanging(global::System.Int32 value);
        partial void OnShopCountryIdChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String ShopCityName
        {
            get
            {
                return _ShopCityName;
            }
            set
            {
                OnShopCityNameChanging(value);
                ReportPropertyChanging("ShopCityName");
                _ShopCityName = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("ShopCityName");
                OnShopCityNameChanged();
            }
        }
        private global::System.String _ShopCityName;
        partial void OnShopCityNameChanging(global::System.String value);
        partial void OnShopCityNameChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String CreateDate
        {
            get
            {
                return _CreateDate;
            }
            set
            {
                OnCreateDateChanging(value);
                ReportPropertyChanging("CreateDate");
                _CreateDate = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("CreateDate");
                OnCreateDateChanged();
            }
        }
        private global::System.String _CreateDate;
        partial void OnCreateDateChanging(global::System.String value);
        partial void OnCreateDateChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Boolean> IsActive
        {
            get
            {
                return _IsActive;
            }
            set
            {
                OnIsActiveChanging(value);
                ReportPropertyChanging("IsActive");
                _IsActive = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("IsActive");
                OnIsActiveChanged();
            }
        }
        private Nullable<global::System.Boolean> _IsActive;
        partial void OnIsActiveChanging(Nullable<global::System.Boolean> value);
        partial void OnIsActiveChanged();

        #endregion

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

        #endregion

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

        #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=true)]
        [DataMemberAttribute()]
        public global::System.String CounrtryName
        {
            get
            {
                return _CounrtryName;
            }
            set
            {
                OnCounrtryNameChanging(value);
                ReportPropertyChanging("CounrtryName");
                _CounrtryName = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("CounrtryName");
                OnCounrtryNameChanged();
            }
        }
        private global::System.String _CounrtryName;
        partial void OnCounrtryNameChanging(global::System.String value);
        partial void OnCounrtryNameChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.DateTime> CreateDate
        {
            get
            {
                return _CreateDate;
            }
            set
            {
                OnCreateDateChanging(value);
                ReportPropertyChanging("CreateDate");
                _CreateDate = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("CreateDate");
                OnCreateDateChanged();
            }
        }
        private Nullable<global::System.DateTime> _CreateDate;
        partial void OnCreateDateChanging(Nullable<global::System.DateTime> value);
        partial void OnCreateDateChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Boolean> IsActive
        {
            get
            {
                return _IsActive;
            }
            set
            {
                OnIsActiveChanging(value);
                ReportPropertyChanging("IsActive");
                _IsActive = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("IsActive");
                OnIsActiveChanged();
            }
        }
        private Nullable<global::System.Boolean> _IsActive;
        partial void OnIsActiveChanging(Nullable<global::System.Boolean> value);
        partial void OnIsActiveChanged();

        #endregion

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

        #endregion

    }
    
    /// <summary>
    /// No Metadata Documentation available.
    /// </summary>
    [EdmEntityTypeAttribute(NamespaceName="StarterSiteModel", Name="ShopLocation")]
    [Serializable()]
    [DataContractAttribute(IsReference=true)]
    public partial class ShopLocation : EntityObject
    {
        #region Factory Method
    
        /// <summary>
        /// Create a new ShopLocation object.
        /// </summary>
        /// <param name="id">Initial value of the Id property.</param>
        /// <param name="shopCountryId">Initial value of the ShopCountryId property.</param>
        /// <param name="shopCityId">Initial value of the ShopCityId property.</param>
        public static ShopLocation CreateShopLocation(global::System.Int32 id, global::System.Int32 shopCountryId, global::System.Int32 shopCityId)
        {
            ShopLocation shopLocation = new ShopLocation();
            shopLocation.Id = id;
            shopLocation.ShopCountryId = shopCountryId;
            shopLocation.ShopCityId = shopCityId;
            return shopLocation;
        }

        #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 ShopCountryId
        {
            get
            {
                return _ShopCountryId;
            }
            set
            {
                OnShopCountryIdChanging(value);
                ReportPropertyChanging("ShopCountryId");
                _ShopCountryId = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("ShopCountryId");
                OnShopCountryIdChanged();
            }
        }
        private global::System.Int32 _ShopCountryId;
        partial void OnShopCountryIdChanging(global::System.Int32 value);
        partial void OnShopCountryIdChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.Int32 ShopCityId
        {
            get
            {
                return _ShopCityId;
            }
            set
            {
                OnShopCityIdChanging(value);
                ReportPropertyChanging("ShopCityId");
                _ShopCityId = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("ShopCityId");
                OnShopCityIdChanged();
            }
        }
        private global::System.Int32 _ShopCityId;
        partial void OnShopCityIdChanging(global::System.Int32 value);
        partial void OnShopCityIdChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String Address
        {
            get
            {
                return _Address;
            }
            set
            {
                OnAddressChanging(value);
                ReportPropertyChanging("Address");
                _Address = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("Address");
                OnAddressChanged();
            }
        }
        private global::System.String _Address;
        partial void OnAddressChanging(global::System.String value);
        partial void OnAddressChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String Phone
        {
            get
            {
                return _Phone;
            }
            set
            {
                OnPhoneChanging(value);
                ReportPropertyChanging("Phone");
                _Phone = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("Phone");
                OnPhoneChanged();
            }
        }
        private global::System.String _Phone;
        partial void OnPhoneChanging(global::System.String value);
        partial void OnPhoneChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String Fax
        {
            get
            {
                return _Fax;
            }
            set
            {
                OnFaxChanging(value);
                ReportPropertyChanging("Fax");
                _Fax = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("Fax");
                OnFaxChanged();
            }
        }
        private global::System.String _Fax;
        partial void OnFaxChanging(global::System.String value);
        partial void OnFaxChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.DateTime> CreateDate
        {
            get
            {
                return _CreateDate;
            }
            set
            {
                OnCreateDateChanging(value);
                ReportPropertyChanging("CreateDate");
                _CreateDate = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("CreateDate");
                OnCreateDateChanged();
            }
        }
        private Nullable<global::System.DateTime> _CreateDate;
        partial void OnCreateDateChanging(Nullable<global::System.DateTime> value);
        partial void OnCreateDateChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Boolean> IsActive
        {
            get
            {
                return _IsActive;
            }
            set
            {
                OnIsActiveChanging(value);
                ReportPropertyChanging("IsActive");
                _IsActive = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("IsActive");
                OnIsActiveChanged();
            }
        }
        private Nullable<global::System.Boolean> _IsActive;
        partial void OnIsActiveChanging(Nullable<global::System.Boolean> value);
        partial void OnIsActiveChanged();

        #endregion

    
        #region Navigation Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [XmlIgnoreAttribute()]
        [SoapIgnoreAttribute()]
        [DataMemberAttribute()]
        [EdmRelationshipNavigationPropertyAttribute("StarterSiteModel", "ShopCountryShopLocation", "ShopCountry")]
        public ShopCountry ShopCountry
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<ShopCountry>("StarterSiteModel.ShopCountryShopLocation", "ShopCountry").Value;
            }
            set
            {
                ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<ShopCountry>("StarterSiteModel.ShopCountryShopLocation", "ShopCountry").Value = value;
            }
        }
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [BrowsableAttribute(false)]
        [DataMemberAttribute()]
        public EntityReference<ShopCountry> ShopCountryReference
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<ShopCountry>("StarterSiteModel.ShopCountryShopLocation", "ShopCountry");
            }
            set
            {
                if ((value != null))
                {
                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedReference<ShopCountry>("StarterSiteModel.ShopCountryShopLocation", "ShopCountry", value);
                }
            }
        }
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [XmlIgnoreAttribute()]
        [SoapIgnoreAttribute()]
        [DataMemberAttribute()]
        [EdmRelationshipNavigationPropertyAttribute("StarterSiteModel", "ShopCityShopLocation", "ShopCity")]
        public ShopCity ShopCity
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<ShopCity>("StarterSiteModel.ShopCityShopLocation", "ShopCity").Value;
            }
            set
            {
                ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<ShopCity>("StarterSiteModel.ShopCityShopLocation", "ShopCity").Value = value;
            }
        }
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [BrowsableAttribute(false)]
        [DataMemberAttribute()]
        public EntityReference<ShopCity> ShopCityReference
        {
            get
            {
                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<ShopCity>("StarterSiteModel.ShopCityShopLocation", "ShopCity");
            }
            set
            {
                if ((value != null))
                {
                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedReference<ShopCity>("StarterSiteModel.ShopCityShopLocation", "ShopCity", value);
                }
            }
        }

        #endregion

    }
    
    /// <summary>
    /// No Metadata Documentation available.
    /// </summary>
    [EdmEntityTypeAttribute(NamespaceName="StarterSiteModel", Name="UserProfile")]
    [Serializable()]
    [DataContractAttribute(IsReference=true)]
    public partial class UserProfile : EntityObject
    {
        #region Factory Method
    
        /// <summary>
        /// Create a new UserProfile object.
        /// </summary>
        /// <param name="userId">Initial value of the UserId property.</param>
        public static UserProfile CreateUserProfile(global::System.Int32 userId)
        {
            UserProfile userProfile = new UserProfile();
            userProfile.UserId = userId;
            return userProfile;
        }

        #endregion

        #region Primitive Properties
    
        /// <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=true, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.Int32 UserId
        {
            get
            {
                return _UserId;
            }
            set
            {
                if (_UserId != value)
                {
                    OnUserIdChanging(value);
                    ReportPropertyChanging("UserId");
                    _UserId = StructuralObject.SetValidValue(value);
                    ReportPropertyChanged("UserId");
                    OnUserIdChanged();
                }
            }
        }
        private global::System.Int32 _UserId;
        partial void OnUserIdChanging(global::System.Int32 value);
        partial void OnUserIdChanged();

        #endregion

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

        #endregion

    }
    
    /// <summary>
    /// No Metadata Documentation available.
    /// </summary>
    [EdmEntityTypeAttribute(NamespaceName="StarterSiteModel", Name="webpages_Membership")]
    [Serializable()]
    [DataContractAttribute(IsReference=true)]
    public partial class webpages_Membership : EntityObject
    {
        #region Factory Method
    
        /// <summary>
        /// Create a new webpages_Membership object.
        /// </summary>
        /// <param name="userId">Initial value of the UserId property.</param>
        /// <param name="passwordFailuresSinceLastSuccess">Initial value of the PasswordFailuresSinceLastSuccess property.</param>
        /// <param name="password">Initial value of the Password property.</param>
        /// <param name="passwordSalt">Initial value of the PasswordSalt property.</param>
        public static webpages_Membership Createwebpages_Membership(global::System.Int32 userId, global::System.Int32 passwordFailuresSinceLastSuccess, global::System.String password, global::System.String passwordSalt)
        {
            webpages_Membership webpages_Membership = new webpages_Membership();
            webpages_Membership.UserId = userId;
            webpages_Membership.PasswordFailuresSinceLastSuccess = passwordFailuresSinceLastSuccess;
            webpages_Membership.Password = password;
            webpages_Membership.PasswordSalt = passwordSalt;
            return webpages_Membership;
        }

        #endregion

        #region Primitive Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.Int32 UserId
        {
            get
            {
                return _UserId;
            }
            set
            {
                if (_UserId != value)
                {
                    OnUserIdChanging(value);
                    ReportPropertyChanging("UserId");
                    _UserId = StructuralObject.SetValidValue(value);
                    ReportPropertyChanged("UserId");
                    OnUserIdChanged();
                }
            }
        }
        private global::System.Int32 _UserId;
        partial void OnUserIdChanging(global::System.Int32 value);
        partial void OnUserIdChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.DateTime> CreateDate
        {
            get
            {
                return _CreateDate;
            }
            set
            {
                OnCreateDateChanging(value);
                ReportPropertyChanging("CreateDate");
                _CreateDate = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("CreateDate");
                OnCreateDateChanged();
            }
        }
        private Nullable<global::System.DateTime> _CreateDate;
        partial void OnCreateDateChanging(Nullable<global::System.DateTime> value);
        partial void OnCreateDateChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String ConfirmationToken
        {
            get
            {
                return _ConfirmationToken;
            }
            set
            {
                OnConfirmationTokenChanging(value);
                ReportPropertyChanging("ConfirmationToken");
                _ConfirmationToken = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("ConfirmationToken");
                OnConfirmationTokenChanged();
            }
        }
        private global::System.String _ConfirmationToken;
        partial void OnConfirmationTokenChanging(global::System.String value);
        partial void OnConfirmationTokenChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Boolean> IsConfirmed
        {
            get
            {
                return _IsConfirmed;
            }
            set
            {
                OnIsConfirmedChanging(value);
                ReportPropertyChanging("IsConfirmed");
                _IsConfirmed = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("IsConfirmed");
                OnIsConfirmedChanged();
            }
        }
        private Nullable<global::System.Boolean> _IsConfirmed;
        partial void OnIsConfirmedChanging(Nullable<global::System.Boolean> value);
        partial void OnIsConfirmedChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.DateTime> LastPasswordFailureDate
        {
            get
            {
                return _LastPasswordFailureDate;
            }
            set
            {
                OnLastPasswordFailureDateChanging(value);
                ReportPropertyChanging("LastPasswordFailureDate");
                _LastPasswordFailureDate = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("LastPasswordFailureDate");
                OnLastPasswordFailureDateChanged();
            }
        }
        private Nullable<global::System.DateTime> _LastPasswordFailureDate;
        partial void OnLastPasswordFailureDateChanging(Nullable<global::System.DateTime> value);
        partial void OnLastPasswordFailureDateChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.Int32 PasswordFailuresSinceLastSuccess
        {
            get
            {
                return _PasswordFailuresSinceLastSuccess;
            }
            set
            {
                OnPasswordFailuresSinceLastSuccessChanging(value);
                ReportPropertyChanging("PasswordFailuresSinceLastSuccess");
                _PasswordFailuresSinceLastSuccess = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("PasswordFailuresSinceLastSuccess");
                OnPasswordFailuresSinceLastSuccessChanged();
            }
        }
        private global::System.Int32 _PasswordFailuresSinceLastSuccess;
        partial void OnPasswordFailuresSinceLastSuccessChanging(global::System.Int32 value);
        partial void OnPasswordFailuresSinceLastSuccessChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.String Password
        {
            get
            {
                return _Password;
            }
            set
            {
                OnPasswordChanging(value);
                ReportPropertyChanging("Password");
                _Password = StructuralObject.SetValidValue(value, false);
                ReportPropertyChanged("Password");
                OnPasswordChanged();
            }
        }
        private global::System.String _Password;
        partial void OnPasswordChanging(global::System.String value);
        partial void OnPasswordChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.DateTime> PasswordChangedDate
        {
            get
            {
                return _PasswordChangedDate;
            }
            set
            {
                OnPasswordChangedDateChanging(value);
                ReportPropertyChanging("PasswordChangedDate");
                _PasswordChangedDate = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("PasswordChangedDate");
                OnPasswordChangedDateChanged();
            }
        }
        private Nullable<global::System.DateTime> _PasswordChangedDate;
        partial void OnPasswordChangedDateChanging(Nullable<global::System.DateTime> value);
        partial void OnPasswordChangedDateChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.String PasswordSalt
        {
            get
            {
                return _PasswordSalt;
            }
            set
            {
                OnPasswordSaltChanging(value);
                ReportPropertyChanging("PasswordSalt");
                _PasswordSalt = StructuralObject.SetValidValue(value, false);
                ReportPropertyChanged("PasswordSalt");
                OnPasswordSaltChanged();
            }
        }
        private global::System.String _PasswordSalt;
        partial void OnPasswordSaltChanging(global::System.String value);
        partial void OnPasswordSaltChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public global::System.String PasswordVerificationToken
        {
            get
            {
                return _PasswordVerificationToken;
            }
            set
            {
                OnPasswordVerificationTokenChanging(value);
                ReportPropertyChanging("PasswordVerificationToken");
                _PasswordVerificationToken = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("PasswordVerificationToken");
                OnPasswordVerificationTokenChanged();
            }
        }
        private global::System.String _PasswordVerificationToken;
        partial void OnPasswordVerificationTokenChanging(global::System.String value);
        partial void OnPasswordVerificationTokenChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.DateTime> PasswordVerificationTokenExpirationDate
        {
            get
            {
                return _PasswordVerificationTokenExpirationDate;
            }
            set
            {
                OnPasswordVerificationTokenExpirationDateChanging(value);
                ReportPropertyChanging("PasswordVerificationTokenExpirationDate");
                _PasswordVerificationTokenExpirationDate = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("PasswordVerificationTokenExpirationDate");
                OnPasswordVerificationTokenExpirationDateChanged();
            }
        }
        private Nullable<global::System.DateTime> _PasswordVerificationTokenExpirationDate;
        partial void OnPasswordVerificationTokenExpirationDateChanging(Nullable<global::System.DateTime> value);
        partial void OnPasswordVerificationTokenExpirationDateChanged();

        #endregion

    
    }
    
    /// <summary>
    /// No Metadata Documentation available.
    /// </summary>
    [EdmEntityTypeAttribute(NamespaceName="StarterSiteModel", Name="webpages_Roles")]
    [Serializable()]
    [DataContractAttribute(IsReference=true)]
    public partial class webpages_Roles : EntityObject
    {
        #region Factory Method
    
        /// <summary>
        /// Create a new webpages_Roles object.
        /// </summary>
        /// <param name="roleId">Initial value of the RoleId property.</param>
        /// <param name="roleName">Initial value of the RoleName property.</param>
        public static webpages_Roles Createwebpages_Roles(global::System.Int32 roleId, global::System.String roleName)
        {
            webpages_Roles webpages_Roles = new webpages_Roles();
            webpages_Roles.RoleId = roleId;
            webpages_Roles.RoleName = roleName;
            return webpages_Roles;
        }

        #endregion

        #region Primitive Properties
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.Int32 RoleId
        {
            get
            {
                return _RoleId;
            }
            set
            {
                if (_RoleId != value)
                {
                    OnRoleIdChanging(value);
                    ReportPropertyChanging("RoleId");
                    _RoleId = StructuralObject.SetValidValue(value);
                    ReportPropertyChanged("RoleId");
                    OnRoleIdChanged();
                }
            }
        }
        private global::System.Int32 _RoleId;
        partial void OnRoleIdChanging(global::System.Int32 value);
        partial void OnRoleIdChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
        [DataMemberAttribute()]
        public global::System.String RoleName
        {
            get
            {
                return _RoleName;
            }
            set
            {
                OnRoleNameChanging(value);
                ReportPropertyChanging("RoleName");
                _RoleName = StructuralObject.SetValidValue(value, false);
                ReportPropertyChanged("RoleName");
                OnRoleNameChanged();
            }
        }
        private global::System.String _RoleName;
        partial void OnRoleNameChanging(global::System.String value);
        partial void OnRoleNameChanged();

        #endregion

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

        #endregion

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

        #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=true)]
        [DataMemberAttribute()]
        public global::System.String SettingName
        {
            get
            {
                return _SettingName;
            }
            set
            {
                OnSettingNameChanging(value);
                ReportPropertyChanging("SettingName");
                _SettingName = StructuralObject.SetValidValue(value, true);
                ReportPropertyChanged("SettingName");
                OnSettingNameChanged();
            }
        }
        private global::System.String _SettingName;
        partial void OnSettingNameChanging(global::System.String value);
        partial void OnSettingNameChanged();
    
        /// <summary>
        /// No Metadata Documentation available.
        /// </summary>
        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
        [DataMemberAttribute()]
        public Nullable<global::System.Boolean> IsActive
        {
            get
            {
                return _IsActive;
            }
            set
            {
                OnIsActiveChanging(value);
                ReportPropertyChanging("IsActive");
                _IsActive = StructuralObject.SetValidValue(value);
                ReportPropertyChanged("IsActive");
                OnIsActiveChanged();
            }
        }
        private Nullable<global::System.Boolean> _IsActive;
        partial void OnIsActiveChanging(Nullable<global::System.Boolean> value);
        partial void OnIsActiveChanged();

        #endregion

    
    }

    #endregion

    
}
