#pragma warning disable 1591
//------------------------------------------------------------------------------
// <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>
//------------------------------------------------------------------------------

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.Linq;
using System.Data.Linq.Mapping;
using System.Linq;
using System.Linq.Expressions;
using System.Reflection;



[global::System.Data.Linq.Mapping.DatabaseAttribute(Name="DriverDB")]
public partial class LSCTamiratDataContext : System.Data.Linq.DataContext
{
	
	private static System.Data.Linq.Mapping.MappingSource mappingSource = new AttributeMappingSource();
	
  #region Extensibility Method Definitions
  partial void OnCreated();
  partial void InserttblDriver(tblDriver instance);
  partial void UpdatetblDriver(tblDriver instance);
  partial void DeletetblDriver(tblDriver instance);
  partial void InserttblUserType(tblUserType instance);
  partial void UpdatetblUserType(tblUserType instance);
  partial void DeletetblUserType(tblUserType instance);
  partial void InserttblDetail(tblDetail instance);
  partial void UpdatetblDetail(tblDetail instance);
  partial void DeletetblDetail(tblDetail instance);
  partial void InserttblCar(tblCar instance);
  partial void UpdatetblCar(tblCar instance);
  partial void DeletetblCar(tblCar instance);
  partial void InserttblDarkhastTamir(tblDarkhastTamir instance);
  partial void UpdatetblDarkhastTamir(tblDarkhastTamir instance);
  partial void DeletetblDarkhastTamir(tblDarkhastTamir instance);
  partial void InserttblLink(tblLink instance);
  partial void UpdatetblLink(tblLink instance);
  partial void DeletetblLink(tblLink instance);
  #endregion
	
	public LSCTamiratDataContext() : 
			base(global::System.Configuration.ConfigurationManager.ConnectionStrings["DriverDBConnectionString"].ConnectionString, mappingSource)
	{
		OnCreated();
	}
	
	public LSCTamiratDataContext(string connection) : 
			base(connection, mappingSource)
	{
		OnCreated();
	}
	
	public LSCTamiratDataContext(System.Data.IDbConnection connection) : 
			base(connection, mappingSource)
	{
		OnCreated();
	}
	
	public LSCTamiratDataContext(string connection, System.Data.Linq.Mapping.MappingSource mappingSource) : 
			base(connection, mappingSource)
	{
		OnCreated();
	}
	
	public LSCTamiratDataContext(System.Data.IDbConnection connection, System.Data.Linq.Mapping.MappingSource mappingSource) : 
			base(connection, mappingSource)
	{
		OnCreated();
	}
	
	public System.Data.Linq.Table<tblDriver> tblDrivers
	{
		get
		{
			return this.GetTable<tblDriver>();
		}
	}
	
	public System.Data.Linq.Table<tblUserType> tblUserTypes
	{
		get
		{
			return this.GetTable<tblUserType>();
		}
	}
	
	public System.Data.Linq.Table<tblDetail> tblDetails
	{
		get
		{
			return this.GetTable<tblDetail>();
		}
	}
	
	public System.Data.Linq.Table<tblCar> tblCars
	{
		get
		{
			return this.GetTable<tblCar>();
		}
	}
	
	public System.Data.Linq.Table<tblDarkhastTamir> tblDarkhastTamirs
	{
		get
		{
			return this.GetTable<tblDarkhastTamir>();
		}
	}
	
	public System.Data.Linq.Table<xtblTamiratBaz> xtblTamiratBazs
	{
		get
		{
			return this.GetTable<xtblTamiratBaz>();
		}
	}
	
	public System.Data.Linq.Table<xtblInfoCar> xtblInfoCars
	{
		get
		{
			return this.GetTable<xtblInfoCar>();
		}
	}
	
	public System.Data.Linq.Table<xtblInfoReparing> xtblInfoReparings
	{
		get
		{
			return this.GetTable<xtblInfoReparing>();
		}
	}
	
	public System.Data.Linq.Table<xtblShowOpenDetail> xtblShowOpenDetails
	{
		get
		{
			return this.GetTable<xtblShowOpenDetail>();
		}
	}
	
	public System.Data.Linq.Table<xtblShowFactor> xtblShowFactors
	{
		get
		{
			return this.GetTable<xtblShowFactor>();
		}
	}
	
	public System.Data.Linq.Table<xtblCar> xtblCars
	{
		get
		{
			return this.GetTable<xtblCar>();
		}
	}
	
	public System.Data.Linq.Table<tblLink> tblLinks
	{
		get
		{
			return this.GetTable<tblLink>();
		}
	}
	
	public System.Data.Linq.Table<xtblCarDriver> xtblCarDrivers
	{
		get
		{
			return this.GetTable<xtblCarDriver>();
		}
	}
}

[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.tblDriver")]
public partial class tblDriver : INotifyPropertyChanging, INotifyPropertyChanged
{
	
	private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
	
	private decimal _DriverID;
	
	private int _UserTypeID;
	
	private string _DriverUserName;
	
	private string _DriverPassword;
	
	private string _DriverName;
	
	private string _DriverFamily;
	
	private string _DriverTell;
	
	private string _DtiverMobail;
	
	private string _DriverEmail;
	
	private string _DriverAddress;
	
	private EntitySet<tblCar> _tblCars;
	
	private EntityRef<tblUserType> _tblUserType;
	
    #region Extensibility Method Definitions
    partial void OnLoaded();
    partial void OnValidate(System.Data.Linq.ChangeAction action);
    partial void OnCreated();
    partial void OnDriverIDChanging(decimal value);
    partial void OnDriverIDChanged();
    partial void OnUserTypeIDChanging(int value);
    partial void OnUserTypeIDChanged();
    partial void OnDriverUserNameChanging(string value);
    partial void OnDriverUserNameChanged();
    partial void OnDriverPasswordChanging(string value);
    partial void OnDriverPasswordChanged();
    partial void OnDriverNameChanging(string value);
    partial void OnDriverNameChanged();
    partial void OnDriverFamilyChanging(string value);
    partial void OnDriverFamilyChanged();
    partial void OnDriverTellChanging(string value);
    partial void OnDriverTellChanged();
    partial void OnDtiverMobailChanging(string value);
    partial void OnDtiverMobailChanged();
    partial void OnDriverEmailChanging(string value);
    partial void OnDriverEmailChanged();
    partial void OnDriverAddressChanging(string value);
    partial void OnDriverAddressChanged();
    #endregion
	
	public tblDriver()
	{
		this._tblCars = new EntitySet<tblCar>(new Action<tblCar>(this.attach_tblCars), new Action<tblCar>(this.detach_tblCars));
		this._tblUserType = default(EntityRef<tblUserType>);
		OnCreated();
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DriverID", AutoSync=AutoSync.Always, DbType="Decimal(18,0) NOT NULL IDENTITY", IsDbGenerated=true)]
	public decimal DriverID
	{
		get
		{
			return this._DriverID;
		}
		set
		{
			if ((this._DriverID != value))
			{
				this.OnDriverIDChanging(value);
				this.SendPropertyChanging();
				this._DriverID = value;
				this.SendPropertyChanged("DriverID");
				this.OnDriverIDChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserTypeID", DbType="Int NOT NULL")]
	public int UserTypeID
	{
		get
		{
			return this._UserTypeID;
		}
		set
		{
			if ((this._UserTypeID != value))
			{
				if (this._tblUserType.HasLoadedOrAssignedValue)
				{
					throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
				}
				this.OnUserTypeIDChanging(value);
				this.SendPropertyChanging();
				this._UserTypeID = value;
				this.SendPropertyChanged("UserTypeID");
				this.OnUserTypeIDChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DriverUserName", DbType="NVarChar(150) NOT NULL", CanBeNull=false, IsPrimaryKey=true)]
	public string DriverUserName
	{
		get
		{
			return this._DriverUserName;
		}
		set
		{
			if ((this._DriverUserName != value))
			{
				this.OnDriverUserNameChanging(value);
				this.SendPropertyChanging();
				this._DriverUserName = value;
				this.SendPropertyChanged("DriverUserName");
				this.OnDriverUserNameChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DriverPassword", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
	public string DriverPassword
	{
		get
		{
			return this._DriverPassword;
		}
		set
		{
			if ((this._DriverPassword != value))
			{
				this.OnDriverPasswordChanging(value);
				this.SendPropertyChanging();
				this._DriverPassword = value;
				this.SendPropertyChanged("DriverPassword");
				this.OnDriverPasswordChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DriverName", DbType="NVarChar(100) NOT NULL", CanBeNull=false)]
	public string DriverName
	{
		get
		{
			return this._DriverName;
		}
		set
		{
			if ((this._DriverName != value))
			{
				this.OnDriverNameChanging(value);
				this.SendPropertyChanging();
				this._DriverName = value;
				this.SendPropertyChanged("DriverName");
				this.OnDriverNameChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DriverFamily", DbType="NVarChar(100) NOT NULL", CanBeNull=false)]
	public string DriverFamily
	{
		get
		{
			return this._DriverFamily;
		}
		set
		{
			if ((this._DriverFamily != value))
			{
				this.OnDriverFamilyChanging(value);
				this.SendPropertyChanging();
				this._DriverFamily = value;
				this.SendPropertyChanged("DriverFamily");
				this.OnDriverFamilyChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DriverTell", DbType="NVarChar(150) NOT NULL", CanBeNull=false)]
	public string DriverTell
	{
		get
		{
			return this._DriverTell;
		}
		set
		{
			if ((this._DriverTell != value))
			{
				this.OnDriverTellChanging(value);
				this.SendPropertyChanging();
				this._DriverTell = value;
				this.SendPropertyChanged("DriverTell");
				this.OnDriverTellChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DtiverMobail", DbType="NVarChar(150) NOT NULL", CanBeNull=false)]
	public string DtiverMobail
	{
		get
		{
			return this._DtiverMobail;
		}
		set
		{
			if ((this._DtiverMobail != value))
			{
				this.OnDtiverMobailChanging(value);
				this.SendPropertyChanging();
				this._DtiverMobail = value;
				this.SendPropertyChanged("DtiverMobail");
				this.OnDtiverMobailChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DriverEmail", DbType="NVarChar(200) NOT NULL", CanBeNull=false)]
	public string DriverEmail
	{
		get
		{
			return this._DriverEmail;
		}
		set
		{
			if ((this._DriverEmail != value))
			{
				this.OnDriverEmailChanging(value);
				this.SendPropertyChanging();
				this._DriverEmail = value;
				this.SendPropertyChanged("DriverEmail");
				this.OnDriverEmailChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DriverAddress", DbType="NVarChar(500)")]
	public string DriverAddress
	{
		get
		{
			return this._DriverAddress;
		}
		set
		{
			if ((this._DriverAddress != value))
			{
				this.OnDriverAddressChanging(value);
				this.SendPropertyChanging();
				this._DriverAddress = value;
				this.SendPropertyChanged("DriverAddress");
				this.OnDriverAddressChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.AssociationAttribute(Name="tblDriver_tblCar", Storage="_tblCars", ThisKey="DriverUserName", OtherKey="DriverUserName")]
	public EntitySet<tblCar> tblCars
	{
		get
		{
			return this._tblCars;
		}
		set
		{
			this._tblCars.Assign(value);
		}
	}
	
	[global::System.Data.Linq.Mapping.AssociationAttribute(Name="tblUserType_tblDriver", Storage="_tblUserType", ThisKey="UserTypeID", OtherKey="UserTypeID", IsForeignKey=true, DeleteOnNull=true, DeleteRule="CASCADE")]
	public tblUserType tblUserType
	{
		get
		{
			return this._tblUserType.Entity;
		}
		set
		{
			tblUserType previousValue = this._tblUserType.Entity;
			if (((previousValue != value) 
						|| (this._tblUserType.HasLoadedOrAssignedValue == false)))
			{
				this.SendPropertyChanging();
				if ((previousValue != null))
				{
					this._tblUserType.Entity = null;
					previousValue.tblDrivers.Remove(this);
				}
				this._tblUserType.Entity = value;
				if ((value != null))
				{
					value.tblDrivers.Add(this);
					this._UserTypeID = value.UserTypeID;
				}
				else
				{
					this._UserTypeID = default(int);
				}
				this.SendPropertyChanged("tblUserType");
			}
		}
	}
	
	public event PropertyChangingEventHandler PropertyChanging;
	
	public event PropertyChangedEventHandler PropertyChanged;
	
	protected virtual void SendPropertyChanging()
	{
		if ((this.PropertyChanging != null))
		{
			this.PropertyChanging(this, emptyChangingEventArgs);
		}
	}
	
	protected virtual void SendPropertyChanged(String propertyName)
	{
		if ((this.PropertyChanged != null))
		{
			this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
		}
	}
	
	private void attach_tblCars(tblCar entity)
	{
		this.SendPropertyChanging();
		entity.tblDriver = this;
	}
	
	private void detach_tblCars(tblCar entity)
	{
		this.SendPropertyChanging();
		entity.tblDriver = null;
	}
}

[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.tblUserType")]
public partial class tblUserType : INotifyPropertyChanging, INotifyPropertyChanged
{
	
	private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
	
	private int _UserTypeID;
	
	private string _UserTypeDescription;
	
	private EntitySet<tblDriver> _tblDrivers;
	
    #region Extensibility Method Definitions
    partial void OnLoaded();
    partial void OnValidate(System.Data.Linq.ChangeAction action);
    partial void OnCreated();
    partial void OnUserTypeIDChanging(int value);
    partial void OnUserTypeIDChanged();
    partial void OnUserTypeDescriptionChanging(string value);
    partial void OnUserTypeDescriptionChanged();
    #endregion
	
	public tblUserType()
	{
		this._tblDrivers = new EntitySet<tblDriver>(new Action<tblDriver>(this.attach_tblDrivers), new Action<tblDriver>(this.detach_tblDrivers));
		OnCreated();
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserTypeID", AutoSync=AutoSync.OnInsert, DbType="Int NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
	public int UserTypeID
	{
		get
		{
			return this._UserTypeID;
		}
		set
		{
			if ((this._UserTypeID != value))
			{
				this.OnUserTypeIDChanging(value);
				this.SendPropertyChanging();
				this._UserTypeID = value;
				this.SendPropertyChanged("UserTypeID");
				this.OnUserTypeIDChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserTypeDescription", DbType="NVarChar(100) NOT NULL", CanBeNull=false)]
	public string UserTypeDescription
	{
		get
		{
			return this._UserTypeDescription;
		}
		set
		{
			if ((this._UserTypeDescription != value))
			{
				this.OnUserTypeDescriptionChanging(value);
				this.SendPropertyChanging();
				this._UserTypeDescription = value;
				this.SendPropertyChanged("UserTypeDescription");
				this.OnUserTypeDescriptionChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.AssociationAttribute(Name="tblUserType_tblDriver", Storage="_tblDrivers", ThisKey="UserTypeID", OtherKey="UserTypeID")]
	public EntitySet<tblDriver> tblDrivers
	{
		get
		{
			return this._tblDrivers;
		}
		set
		{
			this._tblDrivers.Assign(value);
		}
	}
	
	public event PropertyChangingEventHandler PropertyChanging;
	
	public event PropertyChangedEventHandler PropertyChanged;
	
	protected virtual void SendPropertyChanging()
	{
		if ((this.PropertyChanging != null))
		{
			this.PropertyChanging(this, emptyChangingEventArgs);
		}
	}
	
	protected virtual void SendPropertyChanged(String propertyName)
	{
		if ((this.PropertyChanged != null))
		{
			this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
		}
	}
	
	private void attach_tblDrivers(tblDriver entity)
	{
		this.SendPropertyChanging();
		entity.tblUserType = this;
	}
	
	private void detach_tblDrivers(tblDriver entity)
	{
		this.SendPropertyChanging();
		entity.tblUserType = null;
	}
}

[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.tblDetails")]
public partial class tblDetail : INotifyPropertyChanging, INotifyPropertyChanged
{
	
	private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
	
	private decimal _DetailID;
	
	private decimal _TamirID;
	
	private string _DetailNote;
	
	private System.Nullable<double> _TotalCost;
	
	private EntityRef<tblDarkhastTamir> _tblDarkhastTamir;
	
    #region Extensibility Method Definitions
    partial void OnLoaded();
    partial void OnValidate(System.Data.Linq.ChangeAction action);
    partial void OnCreated();
    partial void OnDetailIDChanging(decimal value);
    partial void OnDetailIDChanged();
    partial void OnTamirIDChanging(decimal value);
    partial void OnTamirIDChanged();
    partial void OnDetailNoteChanging(string value);
    partial void OnDetailNoteChanged();
    partial void OnTotalCostChanging(System.Nullable<double> value);
    partial void OnTotalCostChanged();
    #endregion
	
	public tblDetail()
	{
		this._tblDarkhastTamir = default(EntityRef<tblDarkhastTamir>);
		OnCreated();
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DetailID", AutoSync=AutoSync.OnInsert, DbType="Decimal(18,0) NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
	public decimal DetailID
	{
		get
		{
			return this._DetailID;
		}
		set
		{
			if ((this._DetailID != value))
			{
				this.OnDetailIDChanging(value);
				this.SendPropertyChanging();
				this._DetailID = value;
				this.SendPropertyChanged("DetailID");
				this.OnDetailIDChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TamirID", DbType="Decimal(18,0) NOT NULL")]
	public decimal TamirID
	{
		get
		{
			return this._TamirID;
		}
		set
		{
			if ((this._TamirID != value))
			{
				if (this._tblDarkhastTamir.HasLoadedOrAssignedValue)
				{
					throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
				}
				this.OnTamirIDChanging(value);
				this.SendPropertyChanging();
				this._TamirID = value;
				this.SendPropertyChanged("TamirID");
				this.OnTamirIDChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DetailNote", DbType="NVarChar(500) NOT NULL", CanBeNull=false)]
	public string DetailNote
	{
		get
		{
			return this._DetailNote;
		}
		set
		{
			if ((this._DetailNote != value))
			{
				this.OnDetailNoteChanging(value);
				this.SendPropertyChanging();
				this._DetailNote = value;
				this.SendPropertyChanged("DetailNote");
				this.OnDetailNoteChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TotalCost", DbType="Float")]
	public System.Nullable<double> TotalCost
	{
		get
		{
			return this._TotalCost;
		}
		set
		{
			if ((this._TotalCost != value))
			{
				this.OnTotalCostChanging(value);
				this.SendPropertyChanging();
				this._TotalCost = value;
				this.SendPropertyChanged("TotalCost");
				this.OnTotalCostChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.AssociationAttribute(Name="tblDarkhastTamir_tblDetail", Storage="_tblDarkhastTamir", ThisKey="TamirID", OtherKey="TamirID", IsForeignKey=true, DeleteOnNull=true, DeleteRule="CASCADE")]
	public tblDarkhastTamir tblDarkhastTamir
	{
		get
		{
			return this._tblDarkhastTamir.Entity;
		}
		set
		{
			tblDarkhastTamir previousValue = this._tblDarkhastTamir.Entity;
			if (((previousValue != value) 
						|| (this._tblDarkhastTamir.HasLoadedOrAssignedValue == false)))
			{
				this.SendPropertyChanging();
				if ((previousValue != null))
				{
					this._tblDarkhastTamir.Entity = null;
					previousValue.tblDetails.Remove(this);
				}
				this._tblDarkhastTamir.Entity = value;
				if ((value != null))
				{
					value.tblDetails.Add(this);
					this._TamirID = value.TamirID;
				}
				else
				{
					this._TamirID = default(decimal);
				}
				this.SendPropertyChanged("tblDarkhastTamir");
			}
		}
	}
	
	public event PropertyChangingEventHandler PropertyChanging;
	
	public event PropertyChangedEventHandler PropertyChanged;
	
	protected virtual void SendPropertyChanging()
	{
		if ((this.PropertyChanging != null))
		{
			this.PropertyChanging(this, emptyChangingEventArgs);
		}
	}
	
	protected virtual void SendPropertyChanged(String propertyName)
	{
		if ((this.PropertyChanged != null))
		{
			this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
		}
	}
}

[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.tblCar")]
public partial class tblCar : INotifyPropertyChanging, INotifyPropertyChanged
{
	
	private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
	
	private decimal _CarID;
	
	private string _CarName;
	
	private string _PelakNumber;
	
	private string _ShasiNumber;
	
	private string _MotorNumber;
	
	private string _DriverUserName;
	
	private int _CarModel;
	
	private EntitySet<tblDarkhastTamir> _tblDarkhastTamirs;
	
	private EntityRef<tblDriver> _tblDriver;
	
    #region Extensibility Method Definitions
    partial void OnLoaded();
    partial void OnValidate(System.Data.Linq.ChangeAction action);
    partial void OnCreated();
    partial void OnCarIDChanging(decimal value);
    partial void OnCarIDChanged();
    partial void OnCarNameChanging(string value);
    partial void OnCarNameChanged();
    partial void OnPelakNumberChanging(string value);
    partial void OnPelakNumberChanged();
    partial void OnShasiNumberChanging(string value);
    partial void OnShasiNumberChanged();
    partial void OnMotorNumberChanging(string value);
    partial void OnMotorNumberChanged();
    partial void OnDriverUserNameChanging(string value);
    partial void OnDriverUserNameChanged();
    partial void OnCarModelChanging(int value);
    partial void OnCarModelChanged();
    #endregion
	
	public tblCar()
	{
		this._tblDarkhastTamirs = new EntitySet<tblDarkhastTamir>(new Action<tblDarkhastTamir>(this.attach_tblDarkhastTamirs), new Action<tblDarkhastTamir>(this.detach_tblDarkhastTamirs));
		this._tblDriver = default(EntityRef<tblDriver>);
		OnCreated();
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CarID", AutoSync=AutoSync.Always, DbType="Decimal(18,0) NOT NULL IDENTITY", IsDbGenerated=true)]
	public decimal CarID
	{
		get
		{
			return this._CarID;
		}
		set
		{
			if ((this._CarID != value))
			{
				this.OnCarIDChanging(value);
				this.SendPropertyChanging();
				this._CarID = value;
				this.SendPropertyChanged("CarID");
				this.OnCarIDChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CarName", DbType="NVarChar(150) NOT NULL", CanBeNull=false)]
	public string CarName
	{
		get
		{
			return this._CarName;
		}
		set
		{
			if ((this._CarName != value))
			{
				this.OnCarNameChanging(value);
				this.SendPropertyChanging();
				this._CarName = value;
				this.SendPropertyChanged("CarName");
				this.OnCarNameChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PelakNumber", DbType="NVarChar(50) NOT NULL", CanBeNull=false, IsPrimaryKey=true)]
	public string PelakNumber
	{
		get
		{
			return this._PelakNumber;
		}
		set
		{
			if ((this._PelakNumber != value))
			{
				this.OnPelakNumberChanging(value);
				this.SendPropertyChanging();
				this._PelakNumber = value;
				this.SendPropertyChanged("PelakNumber");
				this.OnPelakNumberChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ShasiNumber", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
	public string ShasiNumber
	{
		get
		{
			return this._ShasiNumber;
		}
		set
		{
			if ((this._ShasiNumber != value))
			{
				this.OnShasiNumberChanging(value);
				this.SendPropertyChanging();
				this._ShasiNumber = value;
				this.SendPropertyChanged("ShasiNumber");
				this.OnShasiNumberChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_MotorNumber", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
	public string MotorNumber
	{
		get
		{
			return this._MotorNumber;
		}
		set
		{
			if ((this._MotorNumber != value))
			{
				this.OnMotorNumberChanging(value);
				this.SendPropertyChanging();
				this._MotorNumber = value;
				this.SendPropertyChanged("MotorNumber");
				this.OnMotorNumberChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DriverUserName", DbType="NVarChar(150) NOT NULL", CanBeNull=false)]
	public string DriverUserName
	{
		get
		{
			return this._DriverUserName;
		}
		set
		{
			if ((this._DriverUserName != value))
			{
				if (this._tblDriver.HasLoadedOrAssignedValue)
				{
					throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
				}
				this.OnDriverUserNameChanging(value);
				this.SendPropertyChanging();
				this._DriverUserName = value;
				this.SendPropertyChanged("DriverUserName");
				this.OnDriverUserNameChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CarModel", DbType="Int NOT NULL")]
	public int CarModel
	{
		get
		{
			return this._CarModel;
		}
		set
		{
			if ((this._CarModel != value))
			{
				this.OnCarModelChanging(value);
				this.SendPropertyChanging();
				this._CarModel = value;
				this.SendPropertyChanged("CarModel");
				this.OnCarModelChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.AssociationAttribute(Name="tblCar_tblDarkhastTamir", Storage="_tblDarkhastTamirs", ThisKey="PelakNumber", OtherKey="PelakNumber")]
	public EntitySet<tblDarkhastTamir> tblDarkhastTamirs
	{
		get
		{
			return this._tblDarkhastTamirs;
		}
		set
		{
			this._tblDarkhastTamirs.Assign(value);
		}
	}
	
	[global::System.Data.Linq.Mapping.AssociationAttribute(Name="tblDriver_tblCar", Storage="_tblDriver", ThisKey="DriverUserName", OtherKey="DriverUserName", IsForeignKey=true, DeleteOnNull=true, DeleteRule="CASCADE")]
	public tblDriver tblDriver
	{
		get
		{
			return this._tblDriver.Entity;
		}
		set
		{
			tblDriver previousValue = this._tblDriver.Entity;
			if (((previousValue != value) 
						|| (this._tblDriver.HasLoadedOrAssignedValue == false)))
			{
				this.SendPropertyChanging();
				if ((previousValue != null))
				{
					this._tblDriver.Entity = null;
					previousValue.tblCars.Remove(this);
				}
				this._tblDriver.Entity = value;
				if ((value != null))
				{
					value.tblCars.Add(this);
					this._DriverUserName = value.DriverUserName;
				}
				else
				{
					this._DriverUserName = default(string);
				}
				this.SendPropertyChanged("tblDriver");
			}
		}
	}
	
	public event PropertyChangingEventHandler PropertyChanging;
	
	public event PropertyChangedEventHandler PropertyChanged;
	
	protected virtual void SendPropertyChanging()
	{
		if ((this.PropertyChanging != null))
		{
			this.PropertyChanging(this, emptyChangingEventArgs);
		}
	}
	
	protected virtual void SendPropertyChanged(String propertyName)
	{
		if ((this.PropertyChanged != null))
		{
			this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
		}
	}
	
	private void attach_tblDarkhastTamirs(tblDarkhastTamir entity)
	{
		this.SendPropertyChanging();
		entity.tblCar = this;
	}
	
	private void detach_tblDarkhastTamirs(tblDarkhastTamir entity)
	{
		this.SendPropertyChanging();
		entity.tblCar = null;
	}
}

[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.tblDarkhastTamir")]
public partial class tblDarkhastTamir : INotifyPropertyChanging, INotifyPropertyChanged
{
	
	private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
	
	private decimal _TamirID;
	
	private string _PelakNumber;
	
	private string _TamirNote;
	
	private bool _ClosedBit;
	
	private string _DateDarkhastSH;
	
	private string _SaatDarkhast;
	
	private string _DateAnjamSh;
	
	private EntitySet<tblDetail> _tblDetails;
	
	private EntityRef<tblCar> _tblCar;
	
    #region Extensibility Method Definitions
    partial void OnLoaded();
    partial void OnValidate(System.Data.Linq.ChangeAction action);
    partial void OnCreated();
    partial void OnTamirIDChanging(decimal value);
    partial void OnTamirIDChanged();
    partial void OnPelakNumberChanging(string value);
    partial void OnPelakNumberChanged();
    partial void OnTamirNoteChanging(string value);
    partial void OnTamirNoteChanged();
    partial void OnClosedBitChanging(bool value);
    partial void OnClosedBitChanged();
    partial void OnDateDarkhastSHChanging(string value);
    partial void OnDateDarkhastSHChanged();
    partial void OnSaatDarkhastChanging(string value);
    partial void OnSaatDarkhastChanged();
    partial void OnDateAnjamShChanging(string value);
    partial void OnDateAnjamShChanged();
    #endregion
	
	public tblDarkhastTamir()
	{
		this._tblDetails = new EntitySet<tblDetail>(new Action<tblDetail>(this.attach_tblDetails), new Action<tblDetail>(this.detach_tblDetails));
		this._tblCar = default(EntityRef<tblCar>);
		OnCreated();
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TamirID", AutoSync=AutoSync.OnInsert, DbType="Decimal(18,0) NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
	public decimal TamirID
	{
		get
		{
			return this._TamirID;
		}
		set
		{
			if ((this._TamirID != value))
			{
				this.OnTamirIDChanging(value);
				this.SendPropertyChanging();
				this._TamirID = value;
				this.SendPropertyChanged("TamirID");
				this.OnTamirIDChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PelakNumber", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
	public string PelakNumber
	{
		get
		{
			return this._PelakNumber;
		}
		set
		{
			if ((this._PelakNumber != value))
			{
				if (this._tblCar.HasLoadedOrAssignedValue)
				{
					throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
				}
				this.OnPelakNumberChanging(value);
				this.SendPropertyChanging();
				this._PelakNumber = value;
				this.SendPropertyChanged("PelakNumber");
				this.OnPelakNumberChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TamirNote", DbType="NVarChar(500) NOT NULL", CanBeNull=false)]
	public string TamirNote
	{
		get
		{
			return this._TamirNote;
		}
		set
		{
			if ((this._TamirNote != value))
			{
				this.OnTamirNoteChanging(value);
				this.SendPropertyChanging();
				this._TamirNote = value;
				this.SendPropertyChanged("TamirNote");
				this.OnTamirNoteChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ClosedBit", DbType="Bit NOT NULL")]
	public bool ClosedBit
	{
		get
		{
			return this._ClosedBit;
		}
		set
		{
			if ((this._ClosedBit != value))
			{
				this.OnClosedBitChanging(value);
				this.SendPropertyChanging();
				this._ClosedBit = value;
				this.SendPropertyChanged("ClosedBit");
				this.OnClosedBitChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DateDarkhastSH", DbType="NVarChar(10)")]
	public string DateDarkhastSH
	{
		get
		{
			return this._DateDarkhastSH;
		}
		set
		{
			if ((this._DateDarkhastSH != value))
			{
				this.OnDateDarkhastSHChanging(value);
				this.SendPropertyChanging();
				this._DateDarkhastSH = value;
				this.SendPropertyChanged("DateDarkhastSH");
				this.OnDateDarkhastSHChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SaatDarkhast", DbType="NVarChar(50)")]
	public string SaatDarkhast
	{
		get
		{
			return this._SaatDarkhast;
		}
		set
		{
			if ((this._SaatDarkhast != value))
			{
				this.OnSaatDarkhastChanging(value);
				this.SendPropertyChanging();
				this._SaatDarkhast = value;
				this.SendPropertyChanged("SaatDarkhast");
				this.OnSaatDarkhastChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DateAnjamSh", DbType="NVarChar(10)")]
	public string DateAnjamSh
	{
		get
		{
			return this._DateAnjamSh;
		}
		set
		{
			if ((this._DateAnjamSh != value))
			{
				this.OnDateAnjamShChanging(value);
				this.SendPropertyChanging();
				this._DateAnjamSh = value;
				this.SendPropertyChanged("DateAnjamSh");
				this.OnDateAnjamShChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.AssociationAttribute(Name="tblDarkhastTamir_tblDetail", Storage="_tblDetails", ThisKey="TamirID", OtherKey="TamirID")]
	public EntitySet<tblDetail> tblDetails
	{
		get
		{
			return this._tblDetails;
		}
		set
		{
			this._tblDetails.Assign(value);
		}
	}
	
	[global::System.Data.Linq.Mapping.AssociationAttribute(Name="tblCar_tblDarkhastTamir", Storage="_tblCar", ThisKey="PelakNumber", OtherKey="PelakNumber", IsForeignKey=true, DeleteOnNull=true, DeleteRule="CASCADE")]
	public tblCar tblCar
	{
		get
		{
			return this._tblCar.Entity;
		}
		set
		{
			tblCar previousValue = this._tblCar.Entity;
			if (((previousValue != value) 
						|| (this._tblCar.HasLoadedOrAssignedValue == false)))
			{
				this.SendPropertyChanging();
				if ((previousValue != null))
				{
					this._tblCar.Entity = null;
					previousValue.tblDarkhastTamirs.Remove(this);
				}
				this._tblCar.Entity = value;
				if ((value != null))
				{
					value.tblDarkhastTamirs.Add(this);
					this._PelakNumber = value.PelakNumber;
				}
				else
				{
					this._PelakNumber = default(string);
				}
				this.SendPropertyChanged("tblCar");
			}
		}
	}
	
	public event PropertyChangingEventHandler PropertyChanging;
	
	public event PropertyChangedEventHandler PropertyChanged;
	
	protected virtual void SendPropertyChanging()
	{
		if ((this.PropertyChanging != null))
		{
			this.PropertyChanging(this, emptyChangingEventArgs);
		}
	}
	
	protected virtual void SendPropertyChanged(String propertyName)
	{
		if ((this.PropertyChanged != null))
		{
			this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
		}
	}
	
	private void attach_tblDetails(tblDetail entity)
	{
		this.SendPropertyChanging();
		entity.tblDarkhastTamir = this;
	}
	
	private void detach_tblDetails(tblDetail entity)
	{
		this.SendPropertyChanging();
		entity.tblDarkhastTamir = null;
	}
}

[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.xtblTamiratBaz")]
public partial class xtblTamiratBaz
{
	
	private decimal _TamirID;
	
	private string _PelakNumber;
	
	private string _TamirNote;
	
	private bool _ClosedBit;
	
	private string _DateDarkhastSH;
	
	private string _SaatDarkhast;
	
	private string _PelakAndCarName;
	
	private string _DriverUserName;
	
	private string _Expr1;
	
	private string _DateAnjamSh;
	
	public xtblTamiratBaz()
	{
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TamirID", DbType="Decimal(18,0) NOT NULL")]
	public decimal TamirID
	{
		get
		{
			return this._TamirID;
		}
		set
		{
			if ((this._TamirID != value))
			{
				this._TamirID = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PelakNumber", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
	public string PelakNumber
	{
		get
		{
			return this._PelakNumber;
		}
		set
		{
			if ((this._PelakNumber != value))
			{
				this._PelakNumber = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TamirNote", DbType="NVarChar(500) NOT NULL", CanBeNull=false)]
	public string TamirNote
	{
		get
		{
			return this._TamirNote;
		}
		set
		{
			if ((this._TamirNote != value))
			{
				this._TamirNote = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ClosedBit", DbType="Bit NOT NULL")]
	public bool ClosedBit
	{
		get
		{
			return this._ClosedBit;
		}
		set
		{
			if ((this._ClosedBit != value))
			{
				this._ClosedBit = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DateDarkhastSH", DbType="NVarChar(10)")]
	public string DateDarkhastSH
	{
		get
		{
			return this._DateDarkhastSH;
		}
		set
		{
			if ((this._DateDarkhastSH != value))
			{
				this._DateDarkhastSH = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SaatDarkhast", DbType="NVarChar(50)")]
	public string SaatDarkhast
	{
		get
		{
			return this._SaatDarkhast;
		}
		set
		{
			if ((this._SaatDarkhast != value))
			{
				this._SaatDarkhast = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PelakAndCarName", DbType="NVarChar(203) NOT NULL", CanBeNull=false)]
	public string PelakAndCarName
	{
		get
		{
			return this._PelakAndCarName;
		}
		set
		{
			if ((this._PelakAndCarName != value))
			{
				this._PelakAndCarName = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DriverUserName", DbType="NVarChar(150) NOT NULL", CanBeNull=false)]
	public string DriverUserName
	{
		get
		{
			return this._DriverUserName;
		}
		set
		{
			if ((this._DriverUserName != value))
			{
				this._DriverUserName = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Expr1", DbType="NVarChar(364) NOT NULL", CanBeNull=false)]
	public string Expr1
	{
		get
		{
			return this._Expr1;
		}
		set
		{
			if ((this._Expr1 != value))
			{
				this._Expr1 = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DateAnjamSh", DbType="NVarChar(10)")]
	public string DateAnjamSh
	{
		get
		{
			return this._DateAnjamSh;
		}
		set
		{
			if ((this._DateAnjamSh != value))
			{
				this._DateAnjamSh = value;
			}
		}
	}
}

[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.xtblInfoCar")]
public partial class xtblInfoCar
{
	
	private string _PelahAndCarName;
	
	private string _DriverUserName;
	
	private string _PelakNumber;
	
	private decimal _CarID;
	
	public xtblInfoCar()
	{
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PelahAndCarName", DbType="NVarChar(204) NOT NULL", CanBeNull=false)]
	public string PelahAndCarName
	{
		get
		{
			return this._PelahAndCarName;
		}
		set
		{
			if ((this._PelahAndCarName != value))
			{
				this._PelahAndCarName = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DriverUserName", DbType="NVarChar(150) NOT NULL", CanBeNull=false)]
	public string DriverUserName
	{
		get
		{
			return this._DriverUserName;
		}
		set
		{
			if ((this._DriverUserName != value))
			{
				this._DriverUserName = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PelakNumber", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
	public string PelakNumber
	{
		get
		{
			return this._PelakNumber;
		}
		set
		{
			if ((this._PelakNumber != value))
			{
				this._PelakNumber = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CarID", AutoSync=AutoSync.Always, DbType="Decimal(18,0) NOT NULL IDENTITY", IsDbGenerated=true)]
	public decimal CarID
	{
		get
		{
			return this._CarID;
		}
		set
		{
			if ((this._CarID != value))
			{
				this._CarID = value;
			}
		}
	}
}

[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.xtblInfoReparing")]
public partial class xtblInfoReparing
{
	
	private decimal _TamirID;
	
	private string _information;
	
	private bool _ClosedBit;
	
	private string _DateAnjamSh;
	
	private string _SaatDarkhast;
	
	public xtblInfoReparing()
	{
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TamirID", DbType="Decimal(18,0) NOT NULL")]
	public decimal TamirID
	{
		get
		{
			return this._TamirID;
		}
		set
		{
			if ((this._TamirID != value))
			{
				this._TamirID = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_information", DbType="NVarChar(809)")]
	public string information
	{
		get
		{
			return this._information;
		}
		set
		{
			if ((this._information != value))
			{
				this._information = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ClosedBit", DbType="Bit NOT NULL")]
	public bool ClosedBit
	{
		get
		{
			return this._ClosedBit;
		}
		set
		{
			if ((this._ClosedBit != value))
			{
				this._ClosedBit = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DateAnjamSh", DbType="NVarChar(10)")]
	public string DateAnjamSh
	{
		get
		{
			return this._DateAnjamSh;
		}
		set
		{
			if ((this._DateAnjamSh != value))
			{
				this._DateAnjamSh = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SaatDarkhast", DbType="NVarChar(50)")]
	public string SaatDarkhast
	{
		get
		{
			return this._SaatDarkhast;
		}
		set
		{
			if ((this._SaatDarkhast != value))
			{
				this._SaatDarkhast = value;
			}
		}
	}
}

[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.xtblShowOpenDetails")]
public partial class xtblShowOpenDetail
{
	
	private decimal _DetailID;
	
	private decimal _TamirID;
	
	private string _DetailNote;
	
	private System.Nullable<double> _TotalCost;
	
	private string _SaatDarkhast;
	
	private string _DateAnjamSh;
	
	private string _PelakNumber;
	
	private string _TamirNote;
	
	public xtblShowOpenDetail()
	{
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DetailID", DbType="Decimal(18,0) NOT NULL")]
	public decimal DetailID
	{
		get
		{
			return this._DetailID;
		}
		set
		{
			if ((this._DetailID != value))
			{
				this._DetailID = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TamirID", DbType="Decimal(18,0) NOT NULL")]
	public decimal TamirID
	{
		get
		{
			return this._TamirID;
		}
		set
		{
			if ((this._TamirID != value))
			{
				this._TamirID = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DetailNote", DbType="NVarChar(500) NOT NULL", CanBeNull=false)]
	public string DetailNote
	{
		get
		{
			return this._DetailNote;
		}
		set
		{
			if ((this._DetailNote != value))
			{
				this._DetailNote = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TotalCost", DbType="Float")]
	public System.Nullable<double> TotalCost
	{
		get
		{
			return this._TotalCost;
		}
		set
		{
			if ((this._TotalCost != value))
			{
				this._TotalCost = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SaatDarkhast", DbType="NVarChar(50)")]
	public string SaatDarkhast
	{
		get
		{
			return this._SaatDarkhast;
		}
		set
		{
			if ((this._SaatDarkhast != value))
			{
				this._SaatDarkhast = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DateAnjamSh", DbType="NVarChar(10)")]
	public string DateAnjamSh
	{
		get
		{
			return this._DateAnjamSh;
		}
		set
		{
			if ((this._DateAnjamSh != value))
			{
				this._DateAnjamSh = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PelakNumber", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
	public string PelakNumber
	{
		get
		{
			return this._PelakNumber;
		}
		set
		{
			if ((this._PelakNumber != value))
			{
				this._PelakNumber = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TamirNote", DbType="NVarChar(500) NOT NULL", CanBeNull=false)]
	public string TamirNote
	{
		get
		{
			return this._TamirNote;
		}
		set
		{
			if ((this._TamirNote != value))
			{
				this._TamirNote = value;
			}
		}
	}
}

[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.xtblShowFactor")]
public partial class xtblShowFactor
{
	
	private decimal _DetailID;
	
	private decimal _TamirID;
	
	private string _DetailNote;
	
	private System.Nullable<double> _TotalCost;
	
	private string _SaatDarkhast;
	
	private string _DateAnjamSh;
	
	private string _PelakNumber;
	
	private string _TamirNote;
	
	private string _DriverUserName;
	
	private string _Expr1;
	
	private string _DateDarkhastSH;
	
	public xtblShowFactor()
	{
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DetailID", DbType="Decimal(18,0) NOT NULL")]
	public decimal DetailID
	{
		get
		{
			return this._DetailID;
		}
		set
		{
			if ((this._DetailID != value))
			{
				this._DetailID = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TamirID", DbType="Decimal(18,0) NOT NULL")]
	public decimal TamirID
	{
		get
		{
			return this._TamirID;
		}
		set
		{
			if ((this._TamirID != value))
			{
				this._TamirID = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DetailNote", DbType="NVarChar(500) NOT NULL", CanBeNull=false)]
	public string DetailNote
	{
		get
		{
			return this._DetailNote;
		}
		set
		{
			if ((this._DetailNote != value))
			{
				this._DetailNote = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TotalCost", DbType="Float")]
	public System.Nullable<double> TotalCost
	{
		get
		{
			return this._TotalCost;
		}
		set
		{
			if ((this._TotalCost != value))
			{
				this._TotalCost = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SaatDarkhast", DbType="NVarChar(50)")]
	public string SaatDarkhast
	{
		get
		{
			return this._SaatDarkhast;
		}
		set
		{
			if ((this._SaatDarkhast != value))
			{
				this._SaatDarkhast = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DateAnjamSh", DbType="NVarChar(10)")]
	public string DateAnjamSh
	{
		get
		{
			return this._DateAnjamSh;
		}
		set
		{
			if ((this._DateAnjamSh != value))
			{
				this._DateAnjamSh = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PelakNumber", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
	public string PelakNumber
	{
		get
		{
			return this._PelakNumber;
		}
		set
		{
			if ((this._PelakNumber != value))
			{
				this._PelakNumber = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TamirNote", DbType="NVarChar(500) NOT NULL", CanBeNull=false)]
	public string TamirNote
	{
		get
		{
			return this._TamirNote;
		}
		set
		{
			if ((this._TamirNote != value))
			{
				this._TamirNote = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DriverUserName", DbType="NVarChar(150) NOT NULL", CanBeNull=false)]
	public string DriverUserName
	{
		get
		{
			return this._DriverUserName;
		}
		set
		{
			if ((this._DriverUserName != value))
			{
				this._DriverUserName = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Expr1", DbType="NVarChar(201) NOT NULL", CanBeNull=false)]
	public string Expr1
	{
		get
		{
			return this._Expr1;
		}
		set
		{
			if ((this._Expr1 != value))
			{
				this._Expr1 = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DateDarkhastSH", DbType="NVarChar(10)")]
	public string DateDarkhastSH
	{
		get
		{
			return this._DateDarkhastSH;
		}
		set
		{
			if ((this._DateDarkhastSH != value))
			{
				this._DateDarkhastSH = value;
			}
		}
	}
}

[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.xtblCars")]
public partial class xtblCar
{
	
	private decimal _CarID;
	
	private string _Expr1;
	
	private decimal _TamirID;
	
	public xtblCar()
	{
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CarID", DbType="Decimal(18,0) NOT NULL")]
	public decimal CarID
	{
		get
		{
			return this._CarID;
		}
		set
		{
			if ((this._CarID != value))
			{
				this._CarID = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Expr1", DbType="NVarChar(202) NOT NULL", CanBeNull=false)]
	public string Expr1
	{
		get
		{
			return this._Expr1;
		}
		set
		{
			if ((this._Expr1 != value))
			{
				this._Expr1 = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TamirID", DbType="Decimal(18,0) NOT NULL")]
	public decimal TamirID
	{
		get
		{
			return this._TamirID;
		}
		set
		{
			if ((this._TamirID != value))
			{
				this._TamirID = value;
			}
		}
	}
}

[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.tblLinks")]
public partial class tblLink : INotifyPropertyChanging, INotifyPropertyChanged
{
	
	private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
	
	private int _linkID;
	
	private string _LinkDescript;
	
	private string _linkL;
	
	private System.Nullable<int> _permis;
	
	private System.Nullable<bool> _withOutLogin;
	
	private System.Nullable<double> _LinkSortNum;
	
	private System.Nullable<bool> _IsAllShow;
	
	private System.Nullable<bool> _IsAdminLink;
	
	private System.Nullable<bool> _IsUserWebSit;
	
	private System.Nullable<bool> _IsGuset;
	
    #region Extensibility Method Definitions
    partial void OnLoaded();
    partial void OnValidate(System.Data.Linq.ChangeAction action);
    partial void OnCreated();
    partial void OnlinkIDChanging(int value);
    partial void OnlinkIDChanged();
    partial void OnLinkDescriptChanging(string value);
    partial void OnLinkDescriptChanged();
    partial void OnlinkLChanging(string value);
    partial void OnlinkLChanged();
    partial void OnpermisChanging(System.Nullable<int> value);
    partial void OnpermisChanged();
    partial void OnwithOutLoginChanging(System.Nullable<bool> value);
    partial void OnwithOutLoginChanged();
    partial void OnLinkSortNumChanging(System.Nullable<double> value);
    partial void OnLinkSortNumChanged();
    partial void OnIsAllShowChanging(System.Nullable<bool> value);
    partial void OnIsAllShowChanged();
    partial void OnIsAdminLinkChanging(System.Nullable<bool> value);
    partial void OnIsAdminLinkChanged();
    partial void OnIsUserWebSitChanging(System.Nullable<bool> value);
    partial void OnIsUserWebSitChanged();
    partial void OnIsGusetChanging(System.Nullable<bool> value);
    partial void OnIsGusetChanged();
    #endregion
	
	public tblLink()
	{
		OnCreated();
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_linkID", AutoSync=AutoSync.OnInsert, DbType="Int NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
	public int linkID
	{
		get
		{
			return this._linkID;
		}
		set
		{
			if ((this._linkID != value))
			{
				this.OnlinkIDChanging(value);
				this.SendPropertyChanging();
				this._linkID = value;
				this.SendPropertyChanged("linkID");
				this.OnlinkIDChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_LinkDescript", DbType="NVarChar(50)")]
	public string LinkDescript
	{
		get
		{
			return this._LinkDescript;
		}
		set
		{
			if ((this._LinkDescript != value))
			{
				this.OnLinkDescriptChanging(value);
				this.SendPropertyChanging();
				this._LinkDescript = value;
				this.SendPropertyChanged("LinkDescript");
				this.OnLinkDescriptChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_linkL", DbType="NVarChar(150)")]
	public string linkL
	{
		get
		{
			return this._linkL;
		}
		set
		{
			if ((this._linkL != value))
			{
				this.OnlinkLChanging(value);
				this.SendPropertyChanging();
				this._linkL = value;
				this.SendPropertyChanged("linkL");
				this.OnlinkLChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_permis", DbType="Int")]
	public System.Nullable<int> permis
	{
		get
		{
			return this._permis;
		}
		set
		{
			if ((this._permis != value))
			{
				this.OnpermisChanging(value);
				this.SendPropertyChanging();
				this._permis = value;
				this.SendPropertyChanged("permis");
				this.OnpermisChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_withOutLogin", DbType="Bit")]
	public System.Nullable<bool> withOutLogin
	{
		get
		{
			return this._withOutLogin;
		}
		set
		{
			if ((this._withOutLogin != value))
			{
				this.OnwithOutLoginChanging(value);
				this.SendPropertyChanging();
				this._withOutLogin = value;
				this.SendPropertyChanged("withOutLogin");
				this.OnwithOutLoginChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_LinkSortNum", DbType="Float")]
	public System.Nullable<double> LinkSortNum
	{
		get
		{
			return this._LinkSortNum;
		}
		set
		{
			if ((this._LinkSortNum != value))
			{
				this.OnLinkSortNumChanging(value);
				this.SendPropertyChanging();
				this._LinkSortNum = value;
				this.SendPropertyChanged("LinkSortNum");
				this.OnLinkSortNumChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsAllShow", DbType="Bit")]
	public System.Nullable<bool> IsAllShow
	{
		get
		{
			return this._IsAllShow;
		}
		set
		{
			if ((this._IsAllShow != value))
			{
				this.OnIsAllShowChanging(value);
				this.SendPropertyChanging();
				this._IsAllShow = value;
				this.SendPropertyChanged("IsAllShow");
				this.OnIsAllShowChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsAdminLink", DbType="Bit")]
	public System.Nullable<bool> IsAdminLink
	{
		get
		{
			return this._IsAdminLink;
		}
		set
		{
			if ((this._IsAdminLink != value))
			{
				this.OnIsAdminLinkChanging(value);
				this.SendPropertyChanging();
				this._IsAdminLink = value;
				this.SendPropertyChanged("IsAdminLink");
				this.OnIsAdminLinkChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsUserWebSit", DbType="Bit")]
	public System.Nullable<bool> IsUserWebSit
	{
		get
		{
			return this._IsUserWebSit;
		}
		set
		{
			if ((this._IsUserWebSit != value))
			{
				this.OnIsUserWebSitChanging(value);
				this.SendPropertyChanging();
				this._IsUserWebSit = value;
				this.SendPropertyChanged("IsUserWebSit");
				this.OnIsUserWebSitChanged();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsGuset", DbType="Bit")]
	public System.Nullable<bool> IsGuset
	{
		get
		{
			return this._IsGuset;
		}
		set
		{
			if ((this._IsGuset != value))
			{
				this.OnIsGusetChanging(value);
				this.SendPropertyChanging();
				this._IsGuset = value;
				this.SendPropertyChanged("IsGuset");
				this.OnIsGusetChanged();
			}
		}
	}
	
	public event PropertyChangingEventHandler PropertyChanging;
	
	public event PropertyChangedEventHandler PropertyChanged;
	
	protected virtual void SendPropertyChanging()
	{
		if ((this.PropertyChanging != null))
		{
			this.PropertyChanging(this, emptyChangingEventArgs);
		}
	}
	
	protected virtual void SendPropertyChanged(String propertyName)
	{
		if ((this.PropertyChanged != null))
		{
			this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
		}
	}
}

[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.xtblCarDriver")]
public partial class xtblCarDriver
{
	
	private decimal _CarID;
	
	private string _CarName;
	
	private string _PelakNumber;
	
	private string _ShasiNumber;
	
	private string _MotorNumber;
	
	private string _DriverUserName;
	
	private int _CarModel;
	
	private string _Expr2;
	
	public xtblCarDriver()
	{
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CarID", DbType="Decimal(18,0) NOT NULL")]
	public decimal CarID
	{
		get
		{
			return this._CarID;
		}
		set
		{
			if ((this._CarID != value))
			{
				this._CarID = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CarName", DbType="NVarChar(150) NOT NULL", CanBeNull=false)]
	public string CarName
	{
		get
		{
			return this._CarName;
		}
		set
		{
			if ((this._CarName != value))
			{
				this._CarName = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PelakNumber", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
	public string PelakNumber
	{
		get
		{
			return this._PelakNumber;
		}
		set
		{
			if ((this._PelakNumber != value))
			{
				this._PelakNumber = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ShasiNumber", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
	public string ShasiNumber
	{
		get
		{
			return this._ShasiNumber;
		}
		set
		{
			if ((this._ShasiNumber != value))
			{
				this._ShasiNumber = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_MotorNumber", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
	public string MotorNumber
	{
		get
		{
			return this._MotorNumber;
		}
		set
		{
			if ((this._MotorNumber != value))
			{
				this._MotorNumber = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_DriverUserName", DbType="NVarChar(150) NOT NULL", CanBeNull=false)]
	public string DriverUserName
	{
		get
		{
			return this._DriverUserName;
		}
		set
		{
			if ((this._DriverUserName != value))
			{
				this._DriverUserName = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CarModel", DbType="Int NOT NULL")]
	public int CarModel
	{
		get
		{
			return this._CarModel;
		}
		set
		{
			if ((this._CarModel != value))
			{
				this._CarModel = value;
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Expr2", DbType="NVarChar(352) NOT NULL", CanBeNull=false)]
	public string Expr2
	{
		get
		{
			return this._Expr2;
		}
		set
		{
			if ((this._Expr2 != value))
			{
				this._Expr2 = value;
			}
		}
	}
}
#pragma warning restore 1591
