// ------------------------------------------------------------------------------
// This is autogenerated code from the CodeFirst template.  This file will be
// automatically re-generated from the EDMX when it is saved or the .tt is run.
// You will usually want to first generate your CodeFirst classes from your model
// and then make all subsequent modifications manually.  To avoid losing your
// changes, rename and move this code file so that it will not be re-generated.
// 
//    Generated at: 9/4/2012 7:04:45 PM
//    DevForce version: 6.1.7.1
//    Template version: 2.1.4
// ------------------------------------------------------------------------------
using System;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Runtime.Serialization;
using IbEm   = IdeaBlade.EntityModel;
using IbCore = IdeaBlade.Core;
using IbVal  = IdeaBlade.Validation;
using IbAop  = IdeaBlade.Aop;

namespace iRely.Model { 

  #region tblSMCurrency class

  /// <summary>The auto-generated tblSMCurrency class. </summary>
  
  
  [Table("tblSMCurrency", Schema="dbo")]
  public partial class tblSMCurrency : iRely.BaseModel.iRelyEntity {

    #region Data Properties

    /// <summary>Gets or sets the intCurrencyID. </summary>
    [Key]
    [DataMember]
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    [Column("intCurrencyID")]
    [Bindable(true, BindingDirection.TwoWay)]
    [Editable(true)]
    [Display(Name="intCurrencyID", AutoGenerateField=true)]
    [IbVal.RequiredValueVerifier( ErrorMessageResourceName="tblSMCurrency_intCurrencyID")]
    public int intCurrencyID {
      get; set;
    }

    /// <summary>Gets or sets the strCurrencyID. </summary>
    [DataMember]
    [Column("strCurrencyID")]
    [Bindable(true, BindingDirection.TwoWay)]
    [Editable(true)]
    [Display(Name="strCurrencyID", AutoGenerateField=true)]
    [IbVal.StringLengthVerifier(MaxValue=3, IsRequired=true, ErrorMessageResourceName="tblSMCurrency_strCurrencyID")]
    public string strCurrencyID {
      get; set;
    }

    /// <summary>Gets or sets the strDescription. </summary>
    [DataMember]
    [Column("strDescription")]
    [Bindable(true, BindingDirection.TwoWay)]
    [Editable(true)]
    [Display(Name="strDescription", AutoGenerateField=true)]
    [IbVal.StringLengthVerifier(MaxValue=40, IsRequired=false, ErrorMessageResourceName="tblSMCurrency_strDescription")]
    public string strDescription {
      get; set;
    }

    /// <summary>Gets or sets the dblActualRate. </summary>
    [DataMember]
    [Column("dblActualRate")]
    [Bindable(true, BindingDirection.TwoWay)]
    [Editable(true)]
    [Display(Name="dblActualRate", AutoGenerateField=true)]
    [IbVal.RequiredValueVerifier( ErrorMessageResourceName="tblSMCurrency_dblActualRate")]
    public decimal dblActualRate {
      get; set;
    }

    /// <summary>Gets or sets the dblExchangeRate. </summary>
    [DataMember]
    [Column("dblExchangeRate")]
    [Bindable(true, BindingDirection.TwoWay)]
    [Editable(true)]
    [Display(Name="dblExchangeRate", AutoGenerateField=true)]
    [IbVal.RequiredValueVerifier( ErrorMessageResourceName="tblSMCurrency_dblExchangeRate")]
    public decimal dblExchangeRate {
      get; set;
    }

    /// <summary>Gets or sets the dblBuy. </summary>
    [DataMember]
    [Column("dblBuy")]
    [Bindable(true, BindingDirection.TwoWay)]
    [Editable(true)]
    [Display(Name="dblBuy", AutoGenerateField=true)]
    [IbVal.RequiredValueVerifier( ErrorMessageResourceName="tblSMCurrency_dblBuy")]
    public decimal dblBuy {
      get; set;
    }

    /// <summary>Gets or sets the dblSell. </summary>
    [DataMember]
    [Column("dblSell")]
    [Bindable(true, BindingDirection.TwoWay)]
    [Editable(true)]
    [Display(Name="dblSell", AutoGenerateField=true)]
    [IbVal.RequiredValueVerifier( ErrorMessageResourceName="tblSMCurrency_dblSell")]
    public decimal dblSell {
      get; set;
    }

    /// <summary>Gets or sets the dtmDate. </summary>
    [DataMember]
    [Column("dtmDate")]
    [Bindable(true, BindingDirection.TwoWay)]
    [Editable(true)]
    [Display(Name="dtmDate", AutoGenerateField=true)]
    [IbVal.RequiredValueVerifier( ErrorMessageResourceName="tblSMCurrency_dtmDate")]
    public System.DateTime dtmDate {
      get; set;
    }

    /// <summary>Gets or sets the strSymbol. </summary>
    [DataMember]
    [Column("strSymbol")]
    [Bindable(true, BindingDirection.TwoWay)]
    [Editable(true)]
    [Display(Name="strSymbol", AutoGenerateField=true)]
    [IbVal.StringLengthVerifier(MaxValue=5, IsRequired=false, ErrorMessageResourceName="tblSMCurrency_strSymbol")]
    public string strSymbol {
      get; set;
    }

    /// <summary>Gets or sets the strMemo. </summary>
    [DataMember]
    [Column("strMemo")]
    [Bindable(true, BindingDirection.TwoWay)]
    [Editable(true)]
    [Display(Name="strMemo", AutoGenerateField=true)]
    [IbVal.StringLengthVerifier(MaxValue=255, IsRequired=false, ErrorMessageResourceName="tblSMCurrency_strMemo")]
    public string strMemo {
      get; set;
    }

    /// <summary>Gets or sets the intSort. </summary>
    [DataMember]
    [Column("intSort")]
    [Bindable(true, BindingDirection.TwoWay)]
    [Editable(true)]
    [Display(Name="intSort", AutoGenerateField=true)]
    public System.Nullable<int> intSort {
      get; set;
    }
    #endregion Data Properties

    #region Navigation properties

    /// <summary>Gets the tblSMCurrencyDetails. </summary>
    [DataMember]
    [InverseProperty("tblSMCurrency")]
    [Bindable(false)]
    [Display(Name="tblSMCurrencyDetails", AutoGenerateField=false)]
    public IbEm.RelatedEntityList<tblSMCurrencyDetail> tblSMCurrencyDetails {
      get; set;
    }
    #endregion Navigation properties

    #region EntityPropertyNames
    public partial class EntityPropertyNames  {
      public const String intCurrencyID = "intCurrencyID";
      public const String strCurrencyID = "strCurrencyID";
      public const String strDescription = "strDescription";
      public const String dblActualRate = "dblActualRate";
      public const String dblExchangeRate = "dblExchangeRate";
      public const String dblBuy = "dblBuy";
      public const String dblSell = "dblSell";
      public const String dtmDate = "dtmDate";
      public const String strSymbol = "strSymbol";
      public const String strMemo = "strMemo";
      public const String intSort = "intSort";
      
      public const String tblSMCurrencyDetails = "tblSMCurrencyDetails";
    }
    #endregion EntityPropertyNames
  }
  #endregion tblSMCurrency class
}
