///	<summary> This method copy's each database field from the <paramref name="source"/> interface to this data row.</summary>
		public void Copy_From(IMaterialDataBase source, bool includePrimaryKey = false)
		{
			if (includePrimaryKey) this.MaterialDataBaseId = source.MaterialDataBaseId;
			this.InternetPreviewFileName = source.InternetPreviewFileName;
			this.InternetPreviewLink = source.InternetPreviewLink;
			this.Qualities = source.Qualities;
			this.ToolTipsPerQuality = source.ToolTipsPerQuality;
			this.DisplayTextPerQuality = source.DisplayTextPerQuality;
			this.FileSizeInKB = source.FileSizeInKB;
			this.PlayableUNCFileName = source.PlayableUNCFileName;
			this.FileNameAsSearchKey = source.FileNameAsSearchKey;
			this.LastModify = source.LastModify;
		}
		///	<summary> 
		///		This method copy's each database field which is in the <paramref name="includedColumns"/> 
		///		from the <paramref name="source"/> interface to this data row.
		/// </summary>
		public void Copy_From_But_TakeOnly(IMaterialDataBase source, params string[] includedColumns)
		{
			if (includedColumns.Contains(MaterialDataBasesTable.MaterialDataBaseIdCol)) this.MaterialDataBaseId = source.MaterialDataBaseId;
			if (includedColumns.Contains(MaterialDataBasesTable.InternetPreviewFileNameCol)) this.InternetPreviewFileName = source.InternetPreviewFileName;
			if (includedColumns.Contains(MaterialDataBasesTable.InternetPreviewLinkCol)) this.InternetPreviewLink = source.InternetPreviewLink;
			if (includedColumns.Contains(MaterialDataBasesTable.QualitiesCol)) this.Qualities = source.Qualities;
			if (includedColumns.Contains(MaterialDataBasesTable.ToolTipsPerQualityCol)) this.ToolTipsPerQuality = source.ToolTipsPerQuality;
			if (includedColumns.Contains(MaterialDataBasesTable.DisplayTextPerQualityCol)) this.DisplayTextPerQuality = source.DisplayTextPerQuality;
			if (includedColumns.Contains(MaterialDataBasesTable.FileSizeInKBCol)) this.FileSizeInKB = source.FileSizeInKB;
			if (includedColumns.Contains(MaterialDataBasesTable.PlayableUNCFileNameCol)) this.PlayableUNCFileName = source.PlayableUNCFileName;
			if (includedColumns.Contains(MaterialDataBasesTable.FileNameAsSearchKeyCol)) this.FileNameAsSearchKey = source.FileNameAsSearchKey;
			if (includedColumns.Contains(MaterialDataBasesTable.LastModifyCol)) this.LastModify = source.LastModify;
		}
		///	<summary> This method copy's each database field into the <paramref name="target"/> interface. </summary>
		public void Copy_To(IMaterialDataBase target, bool includePrimaryKey = false)
		{
			if (includePrimaryKey) target.MaterialDataBaseId = this.MaterialDataBaseId;
			target.InternetPreviewFileName = this.InternetPreviewFileName;
			target.InternetPreviewLink = this.InternetPreviewLink;
			target.Qualities = this.Qualities;
			target.ToolTipsPerQuality = this.ToolTipsPerQuality;
			target.DisplayTextPerQuality = this.DisplayTextPerQuality;
			target.FileSizeInKB = this.FileSizeInKB;
			target.PlayableUNCFileName = this.PlayableUNCFileName;
			target.FileNameAsSearchKey = this.FileNameAsSearchKey;
			target.LastModify = this.LastModify;
		}