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

namespace WpfApplication1.ServiceReference1 {
    using System.Runtime.Serialization;
    using System;
    
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="QueryResult", Namespace="DomainServices")]
    [System.SerializableAttribute()]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.QueryResultOfProductSubcategory))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.QueryResultOfProduct))]
    public partial class QueryResult : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int TotalCountField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
        public int TotalCount {
            get {
                return this.TotalCountField;
            }
            set {
                if ((this.TotalCountField.Equals(value) != true)) {
                    this.TotalCountField = value;
                    this.RaisePropertyChanged("TotalCount");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="QueryResultOfProductSubcategory", Namespace="DomainServices")]
    [System.SerializableAttribute()]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.QueryResultOfProduct))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.QueryResult))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.DomainServiceFault))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.ValidationResultInfo[]))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.ValidationResultInfo))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.Product))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.ProductSubcategory))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.Product[]))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.ProductSubcategory[]))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(object[]))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(string[]))]
    public partial class QueryResultOfProductSubcategory : WpfApplication1.ServiceReference1.QueryResult {
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private object[] IncludedResultsField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private WpfApplication1.ServiceReference1.ProductSubcategory[] RootResultsField;
        
        [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
        public object[] IncludedResults {
            get {
                return this.IncludedResultsField;
            }
            set {
                if ((object.ReferenceEquals(this.IncludedResultsField, value) != true)) {
                    this.IncludedResultsField = value;
                    this.RaisePropertyChanged("IncludedResults");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
        public WpfApplication1.ServiceReference1.ProductSubcategory[] RootResults {
            get {
                return this.RootResultsField;
            }
            set {
                if ((object.ReferenceEquals(this.RootResultsField, value) != true)) {
                    this.RootResultsField = value;
                    this.RaisePropertyChanged("RootResults");
                }
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="QueryResultOfProduct", Namespace="DomainServices")]
    [System.SerializableAttribute()]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.QueryResult))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.DomainServiceFault))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.ValidationResultInfo[]))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.ValidationResultInfo))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.QueryResultOfProductSubcategory))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.Product))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.ProductSubcategory))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.Product[]))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(WpfApplication1.ServiceReference1.ProductSubcategory[]))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(object[]))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(string[]))]
    public partial class QueryResultOfProduct : WpfApplication1.ServiceReference1.QueryResult {
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private object[] IncludedResultsField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private WpfApplication1.ServiceReference1.Product[] RootResultsField;
        
        [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
        public object[] IncludedResults {
            get {
                return this.IncludedResultsField;
            }
            set {
                if ((object.ReferenceEquals(this.IncludedResultsField, value) != true)) {
                    this.IncludedResultsField = value;
                    this.RaisePropertyChanged("IncludedResults");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
        public WpfApplication1.ServiceReference1.Product[] RootResults {
            get {
                return this.RootResultsField;
            }
            set {
                if ((object.ReferenceEquals(this.RootResultsField, value) != true)) {
                    this.RootResultsField = value;
                    this.RaisePropertyChanged("RootResults");
                }
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="DomainServiceFault", Namespace="DomainServices")]
    [System.SerializableAttribute()]
    public partial class DomainServiceFault : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ErrorCodeField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string ErrorMessageField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool IsDomainExceptionField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private WpfApplication1.ServiceReference1.ValidationResultInfo[] OperationErrorsField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string StackTraceField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
        public int ErrorCode {
            get {
                return this.ErrorCodeField;
            }
            set {
                if ((this.ErrorCodeField.Equals(value) != true)) {
                    this.ErrorCodeField = value;
                    this.RaisePropertyChanged("ErrorCode");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string ErrorMessage {
            get {
                return this.ErrorMessageField;
            }
            set {
                if ((object.ReferenceEquals(this.ErrorMessageField, value) != true)) {
                    this.ErrorMessageField = value;
                    this.RaisePropertyChanged("ErrorMessage");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool IsDomainException {
            get {
                return this.IsDomainExceptionField;
            }
            set {
                if ((this.IsDomainExceptionField.Equals(value) != true)) {
                    this.IsDomainExceptionField = value;
                    this.RaisePropertyChanged("IsDomainException");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
        public WpfApplication1.ServiceReference1.ValidationResultInfo[] OperationErrors {
            get {
                return this.OperationErrorsField;
            }
            set {
                if ((object.ReferenceEquals(this.OperationErrorsField, value) != true)) {
                    this.OperationErrorsField = value;
                    this.RaisePropertyChanged("OperationErrors");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
        public string StackTrace {
            get {
                return this.StackTraceField;
            }
            set {
                if ((object.ReferenceEquals(this.StackTraceField, value) != true)) {
                    this.StackTraceField = value;
                    this.RaisePropertyChanged("StackTrace");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="ValidationResultInfo", Namespace="DomainServices")]
    [System.SerializableAttribute()]
    public partial class ValidationResultInfo : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ErrorCodeField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string MessageField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string[] SourceMemberNamesField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string StackTraceField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
        public int ErrorCode {
            get {
                return this.ErrorCodeField;
            }
            set {
                if ((this.ErrorCodeField.Equals(value) != true)) {
                    this.ErrorCodeField = value;
                    this.RaisePropertyChanged("ErrorCode");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
        public string Message {
            get {
                return this.MessageField;
            }
            set {
                if ((object.ReferenceEquals(this.MessageField, value) != true)) {
                    this.MessageField = value;
                    this.RaisePropertyChanged("Message");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
        public string[] SourceMemberNames {
            get {
                return this.SourceMemberNamesField;
            }
            set {
                if ((object.ReferenceEquals(this.SourceMemberNamesField, value) != true)) {
                    this.SourceMemberNamesField = value;
                    this.RaisePropertyChanged("SourceMemberNames");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
        public string StackTrace {
            get {
                return this.StackTraceField;
            }
            set {
                if ((object.ReferenceEquals(this.StackTraceField, value) != true)) {
                    this.StackTraceField = value;
                    this.RaisePropertyChanged("StackTrace");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="Product", Namespace="http://schemas.datacontract.org/2004/07/SilverlightApplication1.Web")]
    [System.SerializableAttribute()]
    public partial class Product : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string ClassField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string ColorField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int DaysToManufactureField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.Nullable<System.DateTime> DiscontinuedDateField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool FinishedGoodsFlagField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private decimal ListPriceField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool MakeFlagField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.DateTime ModifiedDateField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string NameField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ProductIDField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string ProductLineField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.Nullable<int> ProductModelIDField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string ProductNumberField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.Nullable<int> ProductSubcategoryIDField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private short ReorderPointField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private short SafetyStockLevelField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.Nullable<System.DateTime> SellEndDateField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.DateTime SellStartDateField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string SizeField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string SizeUnitMeasureCodeField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private decimal StandardCostField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string StyleField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.Nullable<decimal> WeightField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string WeightUnitMeasureCodeField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.Guid rowguidField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Class {
            get {
                return this.ClassField;
            }
            set {
                if ((object.ReferenceEquals(this.ClassField, value) != true)) {
                    this.ClassField = value;
                    this.RaisePropertyChanged("Class");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Color {
            get {
                return this.ColorField;
            }
            set {
                if ((object.ReferenceEquals(this.ColorField, value) != true)) {
                    this.ColorField = value;
                    this.RaisePropertyChanged("Color");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int DaysToManufacture {
            get {
                return this.DaysToManufactureField;
            }
            set {
                if ((this.DaysToManufactureField.Equals(value) != true)) {
                    this.DaysToManufactureField = value;
                    this.RaisePropertyChanged("DaysToManufacture");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.Nullable<System.DateTime> DiscontinuedDate {
            get {
                return this.DiscontinuedDateField;
            }
            set {
                if ((this.DiscontinuedDateField.Equals(value) != true)) {
                    this.DiscontinuedDateField = value;
                    this.RaisePropertyChanged("DiscontinuedDate");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool FinishedGoodsFlag {
            get {
                return this.FinishedGoodsFlagField;
            }
            set {
                if ((this.FinishedGoodsFlagField.Equals(value) != true)) {
                    this.FinishedGoodsFlagField = value;
                    this.RaisePropertyChanged("FinishedGoodsFlag");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public decimal ListPrice {
            get {
                return this.ListPriceField;
            }
            set {
                if ((this.ListPriceField.Equals(value) != true)) {
                    this.ListPriceField = value;
                    this.RaisePropertyChanged("ListPrice");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool MakeFlag {
            get {
                return this.MakeFlagField;
            }
            set {
                if ((this.MakeFlagField.Equals(value) != true)) {
                    this.MakeFlagField = value;
                    this.RaisePropertyChanged("MakeFlag");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.DateTime ModifiedDate {
            get {
                return this.ModifiedDateField;
            }
            set {
                if ((this.ModifiedDateField.Equals(value) != true)) {
                    this.ModifiedDateField = value;
                    this.RaisePropertyChanged("ModifiedDate");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Name {
            get {
                return this.NameField;
            }
            set {
                if ((object.ReferenceEquals(this.NameField, value) != true)) {
                    this.NameField = value;
                    this.RaisePropertyChanged("Name");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int ProductID {
            get {
                return this.ProductIDField;
            }
            set {
                if ((this.ProductIDField.Equals(value) != true)) {
                    this.ProductIDField = value;
                    this.RaisePropertyChanged("ProductID");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string ProductLine {
            get {
                return this.ProductLineField;
            }
            set {
                if ((object.ReferenceEquals(this.ProductLineField, value) != true)) {
                    this.ProductLineField = value;
                    this.RaisePropertyChanged("ProductLine");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.Nullable<int> ProductModelID {
            get {
                return this.ProductModelIDField;
            }
            set {
                if ((this.ProductModelIDField.Equals(value) != true)) {
                    this.ProductModelIDField = value;
                    this.RaisePropertyChanged("ProductModelID");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string ProductNumber {
            get {
                return this.ProductNumberField;
            }
            set {
                if ((object.ReferenceEquals(this.ProductNumberField, value) != true)) {
                    this.ProductNumberField = value;
                    this.RaisePropertyChanged("ProductNumber");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.Nullable<int> ProductSubcategoryID {
            get {
                return this.ProductSubcategoryIDField;
            }
            set {
                if ((this.ProductSubcategoryIDField.Equals(value) != true)) {
                    this.ProductSubcategoryIDField = value;
                    this.RaisePropertyChanged("ProductSubcategoryID");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public short ReorderPoint {
            get {
                return this.ReorderPointField;
            }
            set {
                if ((this.ReorderPointField.Equals(value) != true)) {
                    this.ReorderPointField = value;
                    this.RaisePropertyChanged("ReorderPoint");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public short SafetyStockLevel {
            get {
                return this.SafetyStockLevelField;
            }
            set {
                if ((this.SafetyStockLevelField.Equals(value) != true)) {
                    this.SafetyStockLevelField = value;
                    this.RaisePropertyChanged("SafetyStockLevel");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.Nullable<System.DateTime> SellEndDate {
            get {
                return this.SellEndDateField;
            }
            set {
                if ((this.SellEndDateField.Equals(value) != true)) {
                    this.SellEndDateField = value;
                    this.RaisePropertyChanged("SellEndDate");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.DateTime SellStartDate {
            get {
                return this.SellStartDateField;
            }
            set {
                if ((this.SellStartDateField.Equals(value) != true)) {
                    this.SellStartDateField = value;
                    this.RaisePropertyChanged("SellStartDate");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Size {
            get {
                return this.SizeField;
            }
            set {
                if ((object.ReferenceEquals(this.SizeField, value) != true)) {
                    this.SizeField = value;
                    this.RaisePropertyChanged("Size");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string SizeUnitMeasureCode {
            get {
                return this.SizeUnitMeasureCodeField;
            }
            set {
                if ((object.ReferenceEquals(this.SizeUnitMeasureCodeField, value) != true)) {
                    this.SizeUnitMeasureCodeField = value;
                    this.RaisePropertyChanged("SizeUnitMeasureCode");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public decimal StandardCost {
            get {
                return this.StandardCostField;
            }
            set {
                if ((this.StandardCostField.Equals(value) != true)) {
                    this.StandardCostField = value;
                    this.RaisePropertyChanged("StandardCost");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Style {
            get {
                return this.StyleField;
            }
            set {
                if ((object.ReferenceEquals(this.StyleField, value) != true)) {
                    this.StyleField = value;
                    this.RaisePropertyChanged("Style");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.Nullable<decimal> Weight {
            get {
                return this.WeightField;
            }
            set {
                if ((this.WeightField.Equals(value) != true)) {
                    this.WeightField = value;
                    this.RaisePropertyChanged("Weight");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string WeightUnitMeasureCode {
            get {
                return this.WeightUnitMeasureCodeField;
            }
            set {
                if ((object.ReferenceEquals(this.WeightUnitMeasureCodeField, value) != true)) {
                    this.WeightUnitMeasureCodeField = value;
                    this.RaisePropertyChanged("WeightUnitMeasureCode");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.Guid rowguid {
            get {
                return this.rowguidField;
            }
            set {
                if ((this.rowguidField.Equals(value) != true)) {
                    this.rowguidField = value;
                    this.RaisePropertyChanged("rowguid");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="ProductSubcategory", Namespace="http://schemas.datacontract.org/2004/07/SilverlightApplication1.Web")]
    [System.SerializableAttribute()]
    public partial class ProductSubcategory : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.DateTime ModifiedDateField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string NameField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ProductCategoryIDField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int ProductSubcategoryIDField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.Guid rowguidField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.DateTime ModifiedDate {
            get {
                return this.ModifiedDateField;
            }
            set {
                if ((this.ModifiedDateField.Equals(value) != true)) {
                    this.ModifiedDateField = value;
                    this.RaisePropertyChanged("ModifiedDate");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Name {
            get {
                return this.NameField;
            }
            set {
                if ((object.ReferenceEquals(this.NameField, value) != true)) {
                    this.NameField = value;
                    this.RaisePropertyChanged("Name");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int ProductCategoryID {
            get {
                return this.ProductCategoryIDField;
            }
            set {
                if ((this.ProductCategoryIDField.Equals(value) != true)) {
                    this.ProductCategoryIDField = value;
                    this.RaisePropertyChanged("ProductCategoryID");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int ProductSubcategoryID {
            get {
                return this.ProductSubcategoryIDField;
            }
            set {
                if ((this.ProductSubcategoryIDField.Equals(value) != true)) {
                    this.ProductSubcategoryIDField = value;
                    this.RaisePropertyChanged("ProductSubcategoryID");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.Guid rowguid {
            get {
                return this.rowguidField;
            }
            set {
                if ((this.rowguidField.Equals(value) != true)) {
                    this.rowguidField = value;
                    this.RaisePropertyChanged("rowguid");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    [System.ServiceModel.ServiceContractAttribute(ConfigurationName="ServiceReference1.AdventureWorksDomainService1Soap")]
    public interface AdventureWorksDomainService1Soap {
        
        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/AdventureWorksDomainService1Soap/GetProducts", ReplyAction="http://tempuri.org/AdventureWorksDomainService1Soap/GetProductsResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(WpfApplication1.ServiceReference1.DomainServiceFault), Action="http://tempuri.org/AdventureWorksDomainService1Soap/GetProductsDomainServiceFault" +
            "", Name="DomainServiceFault", Namespace="DomainServices")]
        WpfApplication1.ServiceReference1.QueryResultOfProduct GetProducts();
        
        [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/AdventureWorksDomainService1Soap/GetProductSubcategories", ReplyAction="http://tempuri.org/AdventureWorksDomainService1Soap/GetProductSubcategoriesRespon" +
            "se")]
        [System.ServiceModel.FaultContractAttribute(typeof(WpfApplication1.ServiceReference1.DomainServiceFault), Action="http://tempuri.org/AdventureWorksDomainService1Soap/GetProductSubcategoriesDomain" +
            "ServiceFault", Name="DomainServiceFault", Namespace="DomainServices")]
        WpfApplication1.ServiceReference1.QueryResultOfProductSubcategory GetProductSubcategories();
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    public interface AdventureWorksDomainService1SoapChannel : WpfApplication1.ServiceReference1.AdventureWorksDomainService1Soap, System.ServiceModel.IClientChannel {
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    public partial class AdventureWorksDomainService1SoapClient : System.ServiceModel.ClientBase<WpfApplication1.ServiceReference1.AdventureWorksDomainService1Soap>, WpfApplication1.ServiceReference1.AdventureWorksDomainService1Soap {
        
        public AdventureWorksDomainService1SoapClient() {
        }
        
        public AdventureWorksDomainService1SoapClient(string endpointConfigurationName) : 
                base(endpointConfigurationName) {
        }
        
        public AdventureWorksDomainService1SoapClient(string endpointConfigurationName, string remoteAddress) : 
                base(endpointConfigurationName, remoteAddress) {
        }
        
        public AdventureWorksDomainService1SoapClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(endpointConfigurationName, remoteAddress) {
        }
        
        public AdventureWorksDomainService1SoapClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(binding, remoteAddress) {
        }
        
        public WpfApplication1.ServiceReference1.QueryResultOfProduct GetProducts() {
            return base.Channel.GetProducts();
        }
        
        public WpfApplication1.ServiceReference1.QueryResultOfProductSubcategory GetProductSubcategories() {
            return base.Channel.GetProductSubcategories();
        }
    }
}
