#pragma warning disable 1591
//------------------------------------------------------------------------------
// <auto-generated>
//     此代码由工具生成。
//     运行时版本:4.0.30319.18034
//
//     对此文件的更改可能会导致不正确的行为，并且如果
//     重新生成代码，这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------

namespace TZONE.DataAccess
{
	using System.Data.Linq;
	using System.Data.Linq.Mapping;
	using System.Data;
	using System.Collections.Generic;
	using System.Reflection;
	using System.Linq;
	using System.Linq.Expressions;
	using System.ComponentModel;
	using System;
	
	
	[global::System.Data.Linq.Mapping.DatabaseAttribute(Name="TZONEGPS_DEMO")]
	public partial class DataAccessEntitiesDataContext : System.Data.Linq.DataContext
	{
		
		private static System.Data.Linq.Mapping.MappingSource mappingSource = new AttributeMappingSource();
		
    #region 可扩展性方法定义
    partial void OnCreated();
    partial void InsertOriginal(Original instance);
    partial void UpdateOriginal(Original instance);
    partial void DeleteOriginal(Original instance);
    partial void InsertProduct(Product instance);
    partial void UpdateProduct(Product instance);
    partial void DeleteProduct(Product instance);
    partial void InsertTraceData(TraceData instance);
    partial void UpdateTraceData(TraceData instance);
    partial void DeleteTraceData(TraceData instance);
    partial void InsertType(Type instance);
    partial void UpdateType(Type instance);
    partial void DeleteType(Type instance);
    #endregion
		
		public DataAccessEntitiesDataContext() : 
				base(global::TZONE.DataAccess.Properties.Settings.Default.TZONEGPS_DEMOConnectionString1, mappingSource)
		{
			OnCreated();
		}
		
		public DataAccessEntitiesDataContext(string connection) : 
				base(connection, mappingSource)
		{
			OnCreated();
		}
		
		public DataAccessEntitiesDataContext(System.Data.IDbConnection connection) : 
				base(connection, mappingSource)
		{
			OnCreated();
		}
		
		public DataAccessEntitiesDataContext(string connection, System.Data.Linq.Mapping.MappingSource mappingSource) : 
				base(connection, mappingSource)
		{
			OnCreated();
		}
		
		public DataAccessEntitiesDataContext(System.Data.IDbConnection connection, System.Data.Linq.Mapping.MappingSource mappingSource) : 
				base(connection, mappingSource)
		{
			OnCreated();
		}
		
		public System.Data.Linq.Table<Original> Original
		{
			get
			{
				return this.GetTable<Original>();
			}
		}
		
		public System.Data.Linq.Table<Product> Product
		{
			get
			{
				return this.GetTable<Product>();
			}
		}
		
		public System.Data.Linq.Table<TraceData> TraceData
		{
			get
			{
				return this.GetTable<TraceData>();
			}
		}
		
		public System.Data.Linq.Table<Type> Type
		{
			get
			{
				return this.GetTable<Type>();
			}
		}
	}
	
	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Original")]
	public partial class Original : INotifyPropertyChanging, INotifyPropertyChanged
	{
		
		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
		
		private int _OID;
		
		private string _IMEI;
		
		private System.Nullable<int> _TypeID;
		
		private string _AlarmID;
		
		private System.Nullable<System.DateTime> _TrackerTime;
		
		private System.Nullable<System.DateTime> _ServerTime;
		
		private System.Nullable<System.DateTime> _RTC;
		
		private System.Nullable<int> _Length;
		
		private string _Message;
		
		private string _C;
		
		private int _isdelete;
		
    #region 可扩展性方法定义
    partial void OnLoaded();
    partial void OnValidate(System.Data.Linq.ChangeAction action);
    partial void OnCreated();
    partial void OnOIDChanging(int value);
    partial void OnOIDChanged();
    partial void OnIMEIChanging(string value);
    partial void OnIMEIChanged();
    partial void OnTypeIDChanging(System.Nullable<int> value);
    partial void OnTypeIDChanged();
    partial void OnAlarmIDChanging(string value);
    partial void OnAlarmIDChanged();
    partial void OnTrackerTimeChanging(System.Nullable<System.DateTime> value);
    partial void OnTrackerTimeChanged();
    partial void OnServerTimeChanging(System.Nullable<System.DateTime> value);
    partial void OnServerTimeChanged();
    partial void OnRTCChanging(System.Nullable<System.DateTime> value);
    partial void OnRTCChanged();
    partial void OnLengthChanging(System.Nullable<int> value);
    partial void OnLengthChanged();
    partial void OnMessageChanging(string value);
    partial void OnMessageChanged();
    partial void OnCChanging(string value);
    partial void OnCChanged();
    partial void OnisdeleteChanging(int value);
    partial void OnisdeleteChanged();
    #endregion
		
		public Original()
		{
			OnCreated();
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_OID", AutoSync=AutoSync.OnInsert, DbType="Int NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
		public int OID
		{
			get
			{
				return this._OID;
			}
			set
			{
				if ((this._OID != value))
				{
					this.OnOIDChanging(value);
					this.SendPropertyChanging();
					this._OID = value;
					this.SendPropertyChanged("OID");
					this.OnOIDChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IMEI", DbType="VarChar(50)")]
		public string IMEI
		{
			get
			{
				return this._IMEI;
			}
			set
			{
				if ((this._IMEI != value))
				{
					this.OnIMEIChanging(value);
					this.SendPropertyChanging();
					this._IMEI = value;
					this.SendPropertyChanged("IMEI");
					this.OnIMEIChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TypeID", DbType="Int")]
		public System.Nullable<int> TypeID
		{
			get
			{
				return this._TypeID;
			}
			set
			{
				if ((this._TypeID != value))
				{
					this.OnTypeIDChanging(value);
					this.SendPropertyChanging();
					this._TypeID = value;
					this.SendPropertyChanged("TypeID");
					this.OnTypeIDChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AlarmID", DbType="VarChar(20)")]
		public string AlarmID
		{
			get
			{
				return this._AlarmID;
			}
			set
			{
				if ((this._AlarmID != value))
				{
					this.OnAlarmIDChanging(value);
					this.SendPropertyChanging();
					this._AlarmID = value;
					this.SendPropertyChanged("AlarmID");
					this.OnAlarmIDChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TrackerTime", DbType="DateTime")]
		public System.Nullable<System.DateTime> TrackerTime
		{
			get
			{
				return this._TrackerTime;
			}
			set
			{
				if ((this._TrackerTime != value))
				{
					this.OnTrackerTimeChanging(value);
					this.SendPropertyChanging();
					this._TrackerTime = value;
					this.SendPropertyChanged("TrackerTime");
					this.OnTrackerTimeChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ServerTime", DbType="DateTime")]
		public System.Nullable<System.DateTime> ServerTime
		{
			get
			{
				return this._ServerTime;
			}
			set
			{
				if ((this._ServerTime != value))
				{
					this.OnServerTimeChanging(value);
					this.SendPropertyChanging();
					this._ServerTime = value;
					this.SendPropertyChanged("ServerTime");
					this.OnServerTimeChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RTC", DbType="DateTime")]
		public System.Nullable<System.DateTime> RTC
		{
			get
			{
				return this._RTC;
			}
			set
			{
				if ((this._RTC != value))
				{
					this.OnRTCChanging(value);
					this.SendPropertyChanging();
					this._RTC = value;
					this.SendPropertyChanged("RTC");
					this.OnRTCChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Length", DbType="Int")]
		public System.Nullable<int> Length
		{
			get
			{
				return this._Length;
			}
			set
			{
				if ((this._Length != value))
				{
					this.OnLengthChanging(value);
					this.SendPropertyChanging();
					this._Length = value;
					this.SendPropertyChanged("Length");
					this.OnLengthChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Message", DbType="NVarChar(300)")]
		public string Message
		{
			get
			{
				return this._Message;
			}
			set
			{
				if ((this._Message != value))
				{
					this.OnMessageChanging(value);
					this.SendPropertyChanging();
					this._Message = value;
					this.SendPropertyChanged("Message");
					this.OnMessageChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_C", DbType="VarChar(255)")]
		public string C
		{
			get
			{
				return this._C;
			}
			set
			{
				if ((this._C != value))
				{
					this.OnCChanging(value);
					this.SendPropertyChanging();
					this._C = value;
					this.SendPropertyChanged("C");
					this.OnCChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_isdelete", DbType="Int NOT NULL")]
		public int isdelete
		{
			get
			{
				return this._isdelete;
			}
			set
			{
				if ((this._isdelete != value))
				{
					this.OnisdeleteChanging(value);
					this.SendPropertyChanging();
					this._isdelete = value;
					this.SendPropertyChanged("isdelete");
					this.OnisdeleteChanged();
				}
			}
		}
		
		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.Product")]
	public partial class Product : INotifyPropertyChanging, INotifyPropertyChanged
	{
		
		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
		
		private int _PID;
		
		private int _TypeID;
		
		private string _IMEI;
		
		private string _TrackerName;
		
		private System.Nullable<System.DateTime> _CreateTime;
		
		private int _isdelete;
		
    #region 可扩展性方法定义
    partial void OnLoaded();
    partial void OnValidate(System.Data.Linq.ChangeAction action);
    partial void OnCreated();
    partial void OnPIDChanging(int value);
    partial void OnPIDChanged();
    partial void OnTypeIDChanging(int value);
    partial void OnTypeIDChanged();
    partial void OnIMEIChanging(string value);
    partial void OnIMEIChanged();
    partial void OnTrackerNameChanging(string value);
    partial void OnTrackerNameChanged();
    partial void OnCreateTimeChanging(System.Nullable<System.DateTime> value);
    partial void OnCreateTimeChanged();
    partial void OnisdeleteChanging(int value);
    partial void OnisdeleteChanged();
    #endregion
		
		public Product()
		{
			OnCreated();
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PID", AutoSync=AutoSync.OnInsert, DbType="Int NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
		public int PID
		{
			get
			{
				return this._PID;
			}
			set
			{
				if ((this._PID != value))
				{
					this.OnPIDChanging(value);
					this.SendPropertyChanging();
					this._PID = value;
					this.SendPropertyChanged("PID");
					this.OnPIDChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TypeID", DbType="Int NOT NULL")]
		public int TypeID
		{
			get
			{
				return this._TypeID;
			}
			set
			{
				if ((this._TypeID != value))
				{
					this.OnTypeIDChanging(value);
					this.SendPropertyChanging();
					this._TypeID = value;
					this.SendPropertyChanged("TypeID");
					this.OnTypeIDChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IMEI", DbType="VarChar(20)")]
		public string IMEI
		{
			get
			{
				return this._IMEI;
			}
			set
			{
				if ((this._IMEI != value))
				{
					this.OnIMEIChanging(value);
					this.SendPropertyChanging();
					this._IMEI = value;
					this.SendPropertyChanged("IMEI");
					this.OnIMEIChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TrackerName", DbType="NVarChar(200)")]
		public string TrackerName
		{
			get
			{
				return this._TrackerName;
			}
			set
			{
				if ((this._TrackerName != value))
				{
					this.OnTrackerNameChanging(value);
					this.SendPropertyChanging();
					this._TrackerName = value;
					this.SendPropertyChanged("TrackerName");
					this.OnTrackerNameChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CreateTime", DbType="DateTime")]
		public System.Nullable<System.DateTime> CreateTime
		{
			get
			{
				return this._CreateTime;
			}
			set
			{
				if ((this._CreateTime != value))
				{
					this.OnCreateTimeChanging(value);
					this.SendPropertyChanging();
					this._CreateTime = value;
					this.SendPropertyChanged("CreateTime");
					this.OnCreateTimeChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_isdelete", DbType="Int NOT NULL")]
		public int isdelete
		{
			get
			{
				return this._isdelete;
			}
			set
			{
				if ((this._isdelete != value))
				{
					this.OnisdeleteChanging(value);
					this.SendPropertyChanging();
					this._isdelete = value;
					this.SendPropertyChanged("isdelete");
					this.OnisdeleteChanged();
				}
			}
		}
		
		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.TraceData")]
	public partial class TraceData : INotifyPropertyChanging, INotifyPropertyChanged
	{
		
		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
		
		private int _TID;
		
		private string _IMEI;
		
		private System.Nullable<int> _TypeID;
		
		private string _AlarmID;
		
		private string _GStatus;
		
		private System.Nullable<decimal> _Lat;
		
		private string _NS;
		
		private System.Nullable<decimal> _Lng;
		
		private string _WE;
		
		private System.Nullable<decimal> _Speed;
		
		private System.Nullable<decimal> _Direction;
		
		private System.Nullable<decimal> _PDOP;
		
		private System.Nullable<decimal> _HDOP;
		
		private System.Nullable<decimal> _VDOP;
		
		private string _VCS;
		
		private System.Nullable<decimal> _VBV;
		
		private System.Nullable<decimal> _VCV;
		
		private System.Nullable<decimal> _ADA;
		
		private System.Nullable<decimal> _ADB;
		
		private string _LACCI;
		
		private System.Nullable<decimal> _Temperature;
		
		private System.Nullable<decimal> _Mileage;
		
		private string _IO;
		
		private string _RFID;
		
		private string _Serial;
		
		private System.Nullable<System.DateTime> _TrackerTime;
		
		private System.Nullable<System.DateTime> _ServerTime;
		
		private System.Nullable<System.DateTime> _RTC;
		
		private string _Address;
		
		private string _C;
		
		private int _isdelete;
		
		private string _TagIDList;
		
    #region 可扩展性方法定义
    partial void OnLoaded();
    partial void OnValidate(System.Data.Linq.ChangeAction action);
    partial void OnCreated();
    partial void OnTIDChanging(int value);
    partial void OnTIDChanged();
    partial void OnIMEIChanging(string value);
    partial void OnIMEIChanged();
    partial void OnTypeIDChanging(System.Nullable<int> value);
    partial void OnTypeIDChanged();
    partial void OnAlarmIDChanging(string value);
    partial void OnAlarmIDChanged();
    partial void OnGStatusChanging(string value);
    partial void OnGStatusChanged();
    partial void OnLatChanging(System.Nullable<decimal> value);
    partial void OnLatChanged();
    partial void OnNSChanging(string value);
    partial void OnNSChanged();
    partial void OnLngChanging(System.Nullable<decimal> value);
    partial void OnLngChanged();
    partial void OnWEChanging(string value);
    partial void OnWEChanged();
    partial void OnSpeedChanging(System.Nullable<decimal> value);
    partial void OnSpeedChanged();
    partial void OnDirectionChanging(System.Nullable<decimal> value);
    partial void OnDirectionChanged();
    partial void OnPDOPChanging(System.Nullable<decimal> value);
    partial void OnPDOPChanged();
    partial void OnHDOPChanging(System.Nullable<decimal> value);
    partial void OnHDOPChanged();
    partial void OnVDOPChanging(System.Nullable<decimal> value);
    partial void OnVDOPChanged();
    partial void OnVCSChanging(string value);
    partial void OnVCSChanged();
    partial void OnVBVChanging(System.Nullable<decimal> value);
    partial void OnVBVChanged();
    partial void OnVCVChanging(System.Nullable<decimal> value);
    partial void OnVCVChanged();
    partial void OnADAChanging(System.Nullable<decimal> value);
    partial void OnADAChanged();
    partial void OnADBChanging(System.Nullable<decimal> value);
    partial void OnADBChanged();
    partial void OnLACCIChanging(string value);
    partial void OnLACCIChanged();
    partial void OnTemperatureChanging(System.Nullable<decimal> value);
    partial void OnTemperatureChanged();
    partial void OnMileageChanging(System.Nullable<decimal> value);
    partial void OnMileageChanged();
    partial void OnIOChanging(string value);
    partial void OnIOChanged();
    partial void OnRFIDChanging(string value);
    partial void OnRFIDChanged();
    partial void OnSerialChanging(string value);
    partial void OnSerialChanged();
    partial void OnTrackerTimeChanging(System.Nullable<System.DateTime> value);
    partial void OnTrackerTimeChanged();
    partial void OnServerTimeChanging(System.Nullable<System.DateTime> value);
    partial void OnServerTimeChanged();
    partial void OnRTCChanging(System.Nullable<System.DateTime> value);
    partial void OnRTCChanged();
    partial void OnAddressChanging(string value);
    partial void OnAddressChanged();
    partial void OnCChanging(string value);
    partial void OnCChanged();
    partial void OnisdeleteChanging(int value);
    partial void OnisdeleteChanged();
    partial void OnTagIDListChanging(string value);
    partial void OnTagIDListChanged();
    #endregion
		
		public TraceData()
		{
			OnCreated();
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TID", AutoSync=AutoSync.OnInsert, DbType="Int NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
		public int TID
		{
			get
			{
				return this._TID;
			}
			set
			{
				if ((this._TID != value))
				{
					this.OnTIDChanging(value);
					this.SendPropertyChanging();
					this._TID = value;
					this.SendPropertyChanged("TID");
					this.OnTIDChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IMEI", DbType="VarChar(50)")]
		public string IMEI
		{
			get
			{
				return this._IMEI;
			}
			set
			{
				if ((this._IMEI != value))
				{
					this.OnIMEIChanging(value);
					this.SendPropertyChanging();
					this._IMEI = value;
					this.SendPropertyChanged("IMEI");
					this.OnIMEIChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TypeID", DbType="Int")]
		public System.Nullable<int> TypeID
		{
			get
			{
				return this._TypeID;
			}
			set
			{
				if ((this._TypeID != value))
				{
					this.OnTypeIDChanging(value);
					this.SendPropertyChanging();
					this._TypeID = value;
					this.SendPropertyChanged("TypeID");
					this.OnTypeIDChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AlarmID", DbType="VarChar(20)")]
		public string AlarmID
		{
			get
			{
				return this._AlarmID;
			}
			set
			{
				if ((this._AlarmID != value))
				{
					this.OnAlarmIDChanging(value);
					this.SendPropertyChanging();
					this._AlarmID = value;
					this.SendPropertyChanged("AlarmID");
					this.OnAlarmIDChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_GStatus", DbType="VarChar(10)")]
		public string GStatus
		{
			get
			{
				return this._GStatus;
			}
			set
			{
				if ((this._GStatus != value))
				{
					this.OnGStatusChanging(value);
					this.SendPropertyChanging();
					this._GStatus = value;
					this.SendPropertyChanged("GStatus");
					this.OnGStatusChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Lat", DbType="Decimal(18,6)")]
		public System.Nullable<decimal> Lat
		{
			get
			{
				return this._Lat;
			}
			set
			{
				if ((this._Lat != value))
				{
					this.OnLatChanging(value);
					this.SendPropertyChanging();
					this._Lat = value;
					this.SendPropertyChanged("Lat");
					this.OnLatChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_NS", DbType="VarChar(10)")]
		public string NS
		{
			get
			{
				return this._NS;
			}
			set
			{
				if ((this._NS != value))
				{
					this.OnNSChanging(value);
					this.SendPropertyChanging();
					this._NS = value;
					this.SendPropertyChanged("NS");
					this.OnNSChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Lng", DbType="Decimal(18,6)")]
		public System.Nullable<decimal> Lng
		{
			get
			{
				return this._Lng;
			}
			set
			{
				if ((this._Lng != value))
				{
					this.OnLngChanging(value);
					this.SendPropertyChanging();
					this._Lng = value;
					this.SendPropertyChanged("Lng");
					this.OnLngChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_WE", DbType="VarChar(10)")]
		public string WE
		{
			get
			{
				return this._WE;
			}
			set
			{
				if ((this._WE != value))
				{
					this.OnWEChanging(value);
					this.SendPropertyChanging();
					this._WE = value;
					this.SendPropertyChanged("WE");
					this.OnWEChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Speed", DbType="Decimal(18,2)")]
		public System.Nullable<decimal> Speed
		{
			get
			{
				return this._Speed;
			}
			set
			{
				if ((this._Speed != value))
				{
					this.OnSpeedChanging(value);
					this.SendPropertyChanging();
					this._Speed = value;
					this.SendPropertyChanged("Speed");
					this.OnSpeedChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Direction", DbType="Decimal(18,2)")]
		public System.Nullable<decimal> Direction
		{
			get
			{
				return this._Direction;
			}
			set
			{
				if ((this._Direction != value))
				{
					this.OnDirectionChanging(value);
					this.SendPropertyChanging();
					this._Direction = value;
					this.SendPropertyChanged("Direction");
					this.OnDirectionChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PDOP", DbType="Decimal(18,2)")]
		public System.Nullable<decimal> PDOP
		{
			get
			{
				return this._PDOP;
			}
			set
			{
				if ((this._PDOP != value))
				{
					this.OnPDOPChanging(value);
					this.SendPropertyChanging();
					this._PDOP = value;
					this.SendPropertyChanged("PDOP");
					this.OnPDOPChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_HDOP", DbType="Decimal(18,2)")]
		public System.Nullable<decimal> HDOP
		{
			get
			{
				return this._HDOP;
			}
			set
			{
				if ((this._HDOP != value))
				{
					this.OnHDOPChanging(value);
					this.SendPropertyChanging();
					this._HDOP = value;
					this.SendPropertyChanged("HDOP");
					this.OnHDOPChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_VDOP", DbType="Decimal(18,2)")]
		public System.Nullable<decimal> VDOP
		{
			get
			{
				return this._VDOP;
			}
			set
			{
				if ((this._VDOP != value))
				{
					this.OnVDOPChanging(value);
					this.SendPropertyChanging();
					this._VDOP = value;
					this.SendPropertyChanged("VDOP");
					this.OnVDOPChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_VCS", DbType="VarChar(10)")]
		public string VCS
		{
			get
			{
				return this._VCS;
			}
			set
			{
				if ((this._VCS != value))
				{
					this.OnVCSChanging(value);
					this.SendPropertyChanging();
					this._VCS = value;
					this.SendPropertyChanged("VCS");
					this.OnVCSChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_VBV", DbType="Decimal(18,2)")]
		public System.Nullable<decimal> VBV
		{
			get
			{
				return this._VBV;
			}
			set
			{
				if ((this._VBV != value))
				{
					this.OnVBVChanging(value);
					this.SendPropertyChanging();
					this._VBV = value;
					this.SendPropertyChanged("VBV");
					this.OnVBVChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_VCV", DbType="Decimal(18,2)")]
		public System.Nullable<decimal> VCV
		{
			get
			{
				return this._VCV;
			}
			set
			{
				if ((this._VCV != value))
				{
					this.OnVCVChanging(value);
					this.SendPropertyChanging();
					this._VCV = value;
					this.SendPropertyChanged("VCV");
					this.OnVCVChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ADA", DbType="Decimal(18,2)")]
		public System.Nullable<decimal> ADA
		{
			get
			{
				return this._ADA;
			}
			set
			{
				if ((this._ADA != value))
				{
					this.OnADAChanging(value);
					this.SendPropertyChanging();
					this._ADA = value;
					this.SendPropertyChanged("ADA");
					this.OnADAChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ADB", DbType="Decimal(18,2)")]
		public System.Nullable<decimal> ADB
		{
			get
			{
				return this._ADB;
			}
			set
			{
				if ((this._ADB != value))
				{
					this.OnADBChanging(value);
					this.SendPropertyChanging();
					this._ADB = value;
					this.SendPropertyChanged("ADB");
					this.OnADBChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_LACCI", DbType="VarChar(10)")]
		public string LACCI
		{
			get
			{
				return this._LACCI;
			}
			set
			{
				if ((this._LACCI != value))
				{
					this.OnLACCIChanging(value);
					this.SendPropertyChanging();
					this._LACCI = value;
					this.SendPropertyChanged("LACCI");
					this.OnLACCIChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Temperature", DbType="Decimal(18,2)")]
		public System.Nullable<decimal> Temperature
		{
			get
			{
				return this._Temperature;
			}
			set
			{
				if ((this._Temperature != value))
				{
					this.OnTemperatureChanging(value);
					this.SendPropertyChanging();
					this._Temperature = value;
					this.SendPropertyChanged("Temperature");
					this.OnTemperatureChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Mileage", DbType="Decimal(18,4)")]
		public System.Nullable<decimal> Mileage
		{
			get
			{
				return this._Mileage;
			}
			set
			{
				if ((this._Mileage != value))
				{
					this.OnMileageChanging(value);
					this.SendPropertyChanging();
					this._Mileage = value;
					this.SendPropertyChanged("Mileage");
					this.OnMileageChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IO", DbType="VarChar(20)")]
		public string IO
		{
			get
			{
				return this._IO;
			}
			set
			{
				if ((this._IO != value))
				{
					this.OnIOChanging(value);
					this.SendPropertyChanging();
					this._IO = value;
					this.SendPropertyChanged("IO");
					this.OnIOChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RFID", DbType="VarChar(10)")]
		public string RFID
		{
			get
			{
				return this._RFID;
			}
			set
			{
				if ((this._RFID != value))
				{
					this.OnRFIDChanging(value);
					this.SendPropertyChanging();
					this._RFID = value;
					this.SendPropertyChanged("RFID");
					this.OnRFIDChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Serial", DbType="VarChar(10)")]
		public string Serial
		{
			get
			{
				return this._Serial;
			}
			set
			{
				if ((this._Serial != value))
				{
					this.OnSerialChanging(value);
					this.SendPropertyChanging();
					this._Serial = value;
					this.SendPropertyChanged("Serial");
					this.OnSerialChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TrackerTime", DbType="DateTime")]
		public System.Nullable<System.DateTime> TrackerTime
		{
			get
			{
				return this._TrackerTime;
			}
			set
			{
				if ((this._TrackerTime != value))
				{
					this.OnTrackerTimeChanging(value);
					this.SendPropertyChanging();
					this._TrackerTime = value;
					this.SendPropertyChanged("TrackerTime");
					this.OnTrackerTimeChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ServerTime", DbType="DateTime")]
		public System.Nullable<System.DateTime> ServerTime
		{
			get
			{
				return this._ServerTime;
			}
			set
			{
				if ((this._ServerTime != value))
				{
					this.OnServerTimeChanging(value);
					this.SendPropertyChanging();
					this._ServerTime = value;
					this.SendPropertyChanged("ServerTime");
					this.OnServerTimeChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RTC", DbType="DateTime")]
		public System.Nullable<System.DateTime> RTC
		{
			get
			{
				return this._RTC;
			}
			set
			{
				if ((this._RTC != value))
				{
					this.OnRTCChanging(value);
					this.SendPropertyChanging();
					this._RTC = value;
					this.SendPropertyChanged("RTC");
					this.OnRTCChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Address", DbType="NVarChar(300)")]
		public string Address
		{
			get
			{
				return this._Address;
			}
			set
			{
				if ((this._Address != value))
				{
					this.OnAddressChanging(value);
					this.SendPropertyChanging();
					this._Address = value;
					this.SendPropertyChanged("Address");
					this.OnAddressChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_C", DbType="VarChar(255)")]
		public string C
		{
			get
			{
				return this._C;
			}
			set
			{
				if ((this._C != value))
				{
					this.OnCChanging(value);
					this.SendPropertyChanging();
					this._C = value;
					this.SendPropertyChanged("C");
					this.OnCChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_isdelete", DbType="Int NOT NULL")]
		public int isdelete
		{
			get
			{
				return this._isdelete;
			}
			set
			{
				if ((this._isdelete != value))
				{
					this.OnisdeleteChanging(value);
					this.SendPropertyChanging();
					this._isdelete = value;
					this.SendPropertyChanged("isdelete");
					this.OnisdeleteChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TagIDList", DbType="NVarChar(MAX)")]
		public string TagIDList
		{
			get
			{
				return this._TagIDList;
			}
			set
			{
				if ((this._TagIDList != value))
				{
					this.OnTagIDListChanging(value);
					this.SendPropertyChanging();
					this._TagIDList = value;
					this.SendPropertyChanged("TagIDList");
					this.OnTagIDListChanged();
				}
			}
		}
		
		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.Type")]
	public partial class Type : INotifyPropertyChanging, INotifyPropertyChanged
	{
		
		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
		
		private int _TypeID;
		
		private string _TypeName;
		
		private int _isdelete;
		
		private string _Model;
		
    #region 可扩展性方法定义
    partial void OnLoaded();
    partial void OnValidate(System.Data.Linq.ChangeAction action);
    partial void OnCreated();
    partial void OnTypeIDChanging(int value);
    partial void OnTypeIDChanged();
    partial void OnTypeNameChanging(string value);
    partial void OnTypeNameChanged();
    partial void OnisdeleteChanging(int value);
    partial void OnisdeleteChanged();
    partial void OnModelChanging(string value);
    partial void OnModelChanged();
    #endregion
		
		public Type()
		{
			OnCreated();
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TypeID", AutoSync=AutoSync.OnInsert, DbType="Int NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
		public int TypeID
		{
			get
			{
				return this._TypeID;
			}
			set
			{
				if ((this._TypeID != value))
				{
					this.OnTypeIDChanging(value);
					this.SendPropertyChanging();
					this._TypeID = value;
					this.SendPropertyChanged("TypeID");
					this.OnTypeIDChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TypeName", DbType="NVarChar(50)")]
		public string TypeName
		{
			get
			{
				return this._TypeName;
			}
			set
			{
				if ((this._TypeName != value))
				{
					this.OnTypeNameChanging(value);
					this.SendPropertyChanging();
					this._TypeName = value;
					this.SendPropertyChanged("TypeName");
					this.OnTypeNameChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_isdelete", DbType="Int NOT NULL")]
		public int isdelete
		{
			get
			{
				return this._isdelete;
			}
			set
			{
				if ((this._isdelete != value))
				{
					this.OnisdeleteChanging(value);
					this.SendPropertyChanging();
					this._isdelete = value;
					this.SendPropertyChanged("isdelete");
					this.OnisdeleteChanged();
				}
			}
		}
		
		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Model", DbType="NVarChar(50)")]
		public string Model
		{
			get
			{
				return this._Model;
			}
			set
			{
				if ((this._Model != value))
				{
					this.OnModelChanging(value);
					this.SendPropertyChanging();
					this._Model = value;
					this.SendPropertyChanged("Model");
					this.OnModelChanged();
				}
			}
		}
		
		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));
			}
		}
	}
}
#pragma warning restore 1591
