Click here to Skip to main content
15,881,173 members
Articles / Operating Systems / Windows

Introduction to Validation Application Block integration with Windows Communication Foundation (WCF)

Rate me:
Please Sign up or sign in to vote.
4.28/5 (12 votes)
5 May 20077 min read 92.4K   953   43  
An article on Validation Application Block integration with Windows Communication Foundation (WCF)
//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:2.0.50727.312
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

namespace Bursteg.Samples.WCFIntegration.Client.ServicesProxy
{
    using System.Runtime.Serialization;
    using System;
    
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Namespace="http://bursteg.net/Samples/WCFIntegration/07/04")]
    [System.SerializableAttribute()]
    public partial class OrderData : object, System.Runtime.Serialization.IExtensibleDataObject
    {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private double AmountField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string CurrencyField;
        
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData
        {
            get
            {
                return this.extensionDataField;
            }
            set
            {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public double Amount
        {
            get
            {
                return this.AmountField;
            }
            set
            {
                this.AmountField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Currency
        {
            get
            {
                return this.CurrencyField;
            }
            set
            {
                this.CurrencyField = value;
            }
        }
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Namespace="http://bursteg.net/Samples/WCFIntegration/07/04")]
    [System.SerializableAttribute()]
    public partial class OrderInfo : object, System.Runtime.Serialization.IExtensibleDataObject
    {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int OrderIDField;
        
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData
        {
            get
            {
                return this.extensionDataField;
            }
            set
            {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int OrderID
        {
            get
            {
                return this.OrderIDField;
            }
            set
            {
                this.OrderIDField = value;
            }
        }
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Namespace="http://www.microsoft.com/practices/EnterpriseLibrary/2007/01/wcf/validation")]
    [System.SerializableAttribute()]
    public partial class ValidationFault : object, System.Runtime.Serialization.IExtensibleDataObject
    {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private Bursteg.Samples.WCFIntegration.Client.ServicesProxy.ValidationDetail[] DetailsField;
        
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData
        {
            get
            {
                return this.extensionDataField;
            }
            set
            {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public Bursteg.Samples.WCFIntegration.Client.ServicesProxy.ValidationDetail[] Details
        {
            get
            {
                return this.DetailsField;
            }
            set
            {
                this.DetailsField = value;
            }
        }
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Namespace="http://schemas.datacontract.org/2004/07/Microsoft.Practices.EnterpriseLibrary.Val" +
        "idation.Integration.WCF")]
    [System.SerializableAttribute()]
    public partial class ValidationDetail : object, System.Runtime.Serialization.IExtensibleDataObject
    {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string KeyField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string MessageField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string TagField;
        
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData
        {
            get
            {
                return this.extensionDataField;
            }
            set
            {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Key
        {
            get
            {
                return this.KeyField;
            }
            set
            {
                this.KeyField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Message
        {
            get
            {
                return this.MessageField;
            }
            set
            {
                this.MessageField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Tag
        {
            get
            {
                return this.TagField;
            }
            set
            {
                this.TagField = value;
            }
        }
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
    [System.ServiceModel.ServiceContractAttribute(Namespace="http://bursteg.net/Samples/WCFIntegration/07/04", ConfigurationName="Bursteg.Samples.WCFIntegration.Client.ServicesProxy.IOrdersService")]
    public interface IOrdersService
    {
        
        [System.ServiceModel.OperationContractAttribute(Action="http://bursteg.net/Samples/WCFIntegration/07/04/IOrdersService/CreateOrder", ReplyAction="http://bursteg.net/Samples/WCFIntegration/07/04/IOrdersService/CreateOrderRespons" +
            "e")]
        int CreateOrder(string currency, double amount);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://bursteg.net/Samples/WCFIntegration/07/04/IOrdersService/CreateOrderWithPar" +
            "ametersValidation", ReplyAction="http://bursteg.net/Samples/WCFIntegration/07/04/IOrdersService/CreateOrderWithPar" +
            "ametersValidationResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(Bursteg.Samples.WCFIntegration.Client.ServicesProxy.ValidationFault), Action="http://bursteg.net/Samples/WCFIntegration/07/04/IOrdersService/CreateOrderWithPar" +
            "ametersValidationValidationFaultFault", Name="ValidationFault", Namespace="http://www.microsoft.com/practices/EnterpriseLibrary/2007/01/wcf/validation")]
        int CreateOrderWithParametersValidation(string currency, double amount);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://bursteg.net/Samples/WCFIntegration/07/04/IOrdersService/CreateOrderWithDat" +
            "aContractValidation", ReplyAction="http://bursteg.net/Samples/WCFIntegration/07/04/IOrdersService/CreateOrderWithDat" +
            "aContractValidationResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(Bursteg.Samples.WCFIntegration.Client.ServicesProxy.ValidationFault), Action="http://bursteg.net/Samples/WCFIntegration/07/04/IOrdersService/CreateOrderWithDat" +
            "aContractValidationValidationFaultFault", Name="ValidationFault", Namespace="http://www.microsoft.com/practices/EnterpriseLibrary/2007/01/wcf/validation")]
        Bursteg.Samples.WCFIntegration.Client.ServicesProxy.OrderInfo CreateOrderWithDataContractValidation(Bursteg.Samples.WCFIntegration.Client.ServicesProxy.OrderData orderData);
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
    public interface IOrdersServiceChannel : Bursteg.Samples.WCFIntegration.Client.ServicesProxy.IOrdersService, System.ServiceModel.IClientChannel
    {
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
    public partial class OrdersServiceClient : System.ServiceModel.ClientBase<Bursteg.Samples.WCFIntegration.Client.ServicesProxy.IOrdersService>, Bursteg.Samples.WCFIntegration.Client.ServicesProxy.IOrdersService
    {
        
        public OrdersServiceClient()
        {
        }
        
        public OrdersServiceClient(string endpointConfigurationName) : 
                base(endpointConfigurationName)
        {
        }
        
        public OrdersServiceClient(string endpointConfigurationName, string remoteAddress) : 
                base(endpointConfigurationName, remoteAddress)
        {
        }
        
        public OrdersServiceClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(endpointConfigurationName, remoteAddress)
        {
        }
        
        public OrdersServiceClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(binding, remoteAddress)
        {
        }
        
        public int CreateOrder(string currency, double amount)
        {
            return base.Channel.CreateOrder(currency, amount);
        }
        
        public int CreateOrderWithParametersValidation(string currency, double amount)
        {
            return base.Channel.CreateOrderWithParametersValidation(currency, amount);
        }
        
        public Bursteg.Samples.WCFIntegration.Client.ServicesProxy.OrderInfo CreateOrderWithDataContractValidation(Bursteg.Samples.WCFIntegration.Client.ServicesProxy.OrderData orderData)
        {
            return base.Channel.CreateOrderWithDataContractValidation(orderData);
        }
    }
}

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


Written By
Web Developer
Israel Israel
Guy Burstein is a senior consultant and lecturer at Advantech Technologies – Microsoft Division, specializing in architecture, design and development of distributed applications.
He is a presenter at conferences and user-group meetings and has delivered seminars, courses and hands-on training for developing distributed applications using latest Microsoft tools and technologies.

Comments and Discussions