亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? debugappender.cs

?? 詳細講述了數據庫編程
?? CS
字號:
#region Copyright & License
//
// Copyright 2001-2005 The Apache Software Foundation
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
#endregion

#define DEBUG

using log4net.Layout;
using log4net.Core;

namespace log4net.Appender
{
	/// <summary>
	/// Appends log events to the <see cref="System.Diagnostics.Debug"/> system.
	/// </summary>
	/// <remarks>
	/// <para>
	/// The application configuration file can be used to control what listeners 
	/// are actually used. See the MSDN documentation for the 
	/// <see cref="System.Diagnostics.Debug"/> class for details on configuring the
	/// debug system.
	/// </para>
	/// <para>
	/// Events are written using the <see cref="System.Diagnostics.Debug.Write(string,string)"/>
	/// method. The event's logger name is passed as the value for the category name to the Write method.
	/// </para>
	/// </remarks>
	/// <author>Nicko Cadell</author>
	public class DebugAppender : AppenderSkeleton
	{
		#region Public Instance Constructors

		/// <summary>
		/// Initializes a new instance of the <see cref="DebugAppender" />.
		/// </summary>
		/// <remarks>
		/// <para>
		/// Default constructor.
		/// </para>
		/// </remarks>
		public DebugAppender()
		{
		}

		/// <summary>
		/// Initializes a new instance of the <see cref="DebugAppender" /> 
		/// with a specified layout.
		/// </summary>
		/// <param name="layout">The layout to use with this appender.</param>
		/// <remarks>
		/// <para>
		/// Obsolete constructor.
		/// </para>
		/// </remarks>
		[System.Obsolete("Instead use the default constructor and set the Layout property")]
		public DebugAppender(ILayout layout)
		{
			Layout = layout;
		}

		#endregion Public Instance Constructors

		#region Public Instance Properties

		/// <summary>
		/// Gets or sets a value that indicates whether the appender will 
		/// flush at the end of each write.
		/// </summary>
		/// <remarks>
		/// <para>The default behavior is to flush at the end of each 
		/// write. If the option is set to<c>false</c>, then the underlying 
		/// stream can defer writing to physical medium to a later time. 
		/// </para>
		/// <para>
		/// Avoiding the flush operation at the end of each append results 
		/// in a performance gain of 10 to 20 percent. However, there is safety
		/// trade-off involved in skipping flushing. Indeed, when flushing is
		/// skipped, then it is likely that the last few log events will not
		/// be recorded on disk when the application exits. This is a high
		/// price to pay even for a 20% performance gain.
		/// </para>
		/// </remarks>
		public bool ImmediateFlush
		{
			get { return m_immediateFlush; }
			set { m_immediateFlush = value; }
		}

		#endregion Public Instance Properties

		#region Override implementation of AppenderSkeleton

		/// <summary>
		/// Writes the logging event to the <see cref="System.Diagnostics.Debug"/> system.
		/// </summary>
		/// <param name="loggingEvent">The event to log.</param>
		/// <remarks>
		/// <para>
		/// Writes the logging event to the <see cref="System.Diagnostics.Debug"/> system.
		/// If <see cref="ImmediateFlush"/> is <c>true</c> then the <see cref="System.Diagnostics.Debug.Flush"/>
		/// is called.
		/// </para>
		/// </remarks>
		override protected void Append(LoggingEvent loggingEvent) 
		{
			//
			// Write the string to the Debug system
			//
			System.Diagnostics.Debug.Write(RenderLoggingEvent(loggingEvent), loggingEvent.LoggerName);
	 
			//
			// Flush the Debug system if needed
			//
			if (m_immediateFlush) 
			{
				System.Diagnostics.Debug.Flush();
			} 
		}

		/// <summary>
		/// This appender requires a <see cref="Layout"/> to be set.
		/// </summary>
		/// <value><c>true</c></value>
		/// <remarks>
		/// <para>
		/// This appender requires a <see cref="Layout"/> to be set.
		/// </para>
		/// </remarks>
		override protected bool RequiresLayout
		{
			get { return true; }
		}

		#endregion Override implementation of AppenderSkeleton

		#region Private Instance Fields

		/// <summary>
		/// Immediate flush means that the underlying writer or output stream
		/// will be flushed at the end of each append operation.
		/// </summary>
		/// <remarks>
		/// <para>
		/// Immediate flush is slower but ensures that each append request is 
		/// actually written. If <see cref="ImmediateFlush"/> is set to
		/// <c>false</c>, then there is a good chance that the last few
		/// logs events are not actually written to persistent media if and
		/// when the application crashes.
		/// </para>
		/// <para>
		/// The default value is <c>true</c>.</para>
		/// </remarks>
		private bool m_immediateFlush = true;

		#endregion Private Instance Fields
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产老妇另类xxxxx| 天天操天天干天天综合网| 91精品国产丝袜白色高跟鞋| www.亚洲色图| 91在线观看免费视频| 成人av集中营| 99re这里都是精品| av电影在线不卡| 91香蕉视频mp4| 91激情五月电影| 欧美三片在线视频观看| 欧美日韩国产综合视频在线观看 | 国产女主播视频一区二区| 欧美成人精品二区三区99精品| 日韩美女在线视频| 久久久综合精品| 国产欧美1区2区3区| 亚洲欧美国产77777| 亚洲色图欧美偷拍| 日本不卡的三区四区五区| 韩国av一区二区三区四区 | 高清不卡一区二区在线| 国产成人aaaa| 成人动漫中文字幕| 日本精品免费观看高清观看| 欧美日韩极品在线观看一区| 日韩精品中文字幕一区| 久久久久国产精品厨房| 18成人在线观看| 亚洲午夜免费福利视频| 久久er99热精品一区二区| 风间由美一区二区av101 | 欧美一二三四区在线| 久久久久久久久97黄色工厂| 亚洲丝袜另类动漫二区| 日产国产高清一区二区三区| 国产二区国产一区在线观看| 在线观看欧美黄色| 久久女同精品一区二区| 亚洲欧美另类久久久精品| 老司机免费视频一区二区三区| 国产精品一区二区久久不卡| 欧美视频自拍偷拍| 久久精品人人做人人综合| 一区二区三区美女| 国产精品一线二线三线精华| 欧美日韩一区二区在线观看视频| 精品国产乱码久久久久久久 | 99久久综合99久久综合网站| 日韩午夜在线观看视频| 亚洲三级视频在线观看| 国产九九视频一区二区三区| 欧美在线观看一二区| 久久久国际精品| 免费高清在线一区| 色先锋资源久久综合| 久久久久久久精| 日韩avvvv在线播放| 欧美性xxxxxxxx| 亚洲人被黑人高潮完整版| 国产一区二区三区精品视频| 欧美日韩国产一级片| 亚洲欧美另类在线| 99国产精品久久久久久久久久久| 2欧美一区二区三区在线观看视频| 亚洲精品第1页| 成人app网站| 国产日韩欧美一区二区三区综合| 毛片av一区二区| 欧美精选在线播放| 亚洲高清视频的网址| 欧亚洲嫩模精品一区三区| 日韩毛片视频在线看| 成人深夜福利app| 中文字幕电影一区| 成人免费视频视频在线观看免费| 欧美精品一区二区在线观看| 免费一级欧美片在线观看| 日韩一卡二卡三卡国产欧美| 丝袜美腿亚洲综合| 在线不卡免费欧美| 久久99精品久久久久久国产越南| 日韩色在线观看| 久久精品国产77777蜜臀| 精品剧情在线观看| 国产精品一区二区久久精品爱涩| 亚洲精品在线电影| 国产999精品久久久久久| 国产精品网曝门| 99综合电影在线视频| 亚洲欧美日韩在线| 欧美人牲a欧美精品| 日韩精品亚洲专区| 精品对白一区国产伦| 国产精品一区二区三区四区| 中文字幕一区二区三区在线播放| 99re视频精品| 婷婷激情综合网| 欧美videos大乳护士334| 国产91精品一区二区麻豆亚洲| 国产欧美日韩在线| 91久久精品午夜一区二区| 亚洲v中文字幕| 久久综合色8888| 99久久精品国产毛片| 亚洲高清免费在线| 久久人人爽人人爽| 欧洲精品一区二区| 国内久久精品视频| 一区二区视频在线看| 欧美一级夜夜爽| 国产成人福利片| 午夜电影久久久| 中文乱码免费一区二区| 欧美日本韩国一区二区三区视频| 国产福利一区二区三区在线视频| 亚洲同性gay激情无套| 日韩欧美高清dvd碟片| 成人永久aaa| 天堂在线亚洲视频| 国产精品乱码人人做人人爱| 久99久精品视频免费观看| 在线电影院国产精品| 久久99国产精品麻豆| 国产精品视频在线看| 欧美日韩国产天堂| 国产aⅴ综合色| 久久精品国产亚洲aⅴ | 91精品国产综合久久精品麻豆| 九九视频精品免费| 亚洲综合激情网| 久久精品亚洲精品国产欧美kt∨| 在线看日本不卡| 成人一区二区三区视频 | 国产精品久久久久久久久免费丝袜 | 奇米色一区二区| 一区二区视频在线看| 久久婷婷久久一区二区三区| 欧美日韩高清不卡| 成人免费视频一区二区| 国产一区二区在线电影| 亚洲国产色一区| 欧美极品美女视频| 欧美成人video| 一本色道综合亚洲| 国产高清久久久久| 久久成人麻豆午夜电影| 天天综合网 天天综合色| 国产精品美女久久福利网站| 91无套直看片红桃| 国产一区二区在线影院| 亚洲国产综合视频在线观看| 国产欧美一区二区在线观看| 91丨porny丨国产| 成熟亚洲日本毛茸茸凸凹| 久久电影网电视剧免费观看| 视频一区欧美精品| 国产免费成人在线视频| 国产亚洲综合在线| 日韩视频在线一区二区| 在线亚洲免费视频| 99精品国产视频| 91免费精品国自产拍在线不卡| 高清成人免费视频| 国产精品18久久久久久久久| 日本欧美加勒比视频| 亚洲欧美日韩系列| 国产精品每日更新在线播放网址| 久久综合狠狠综合久久激情 | 91老师片黄在线观看| 成人av网在线| 粉嫩av一区二区三区粉嫩| 国产精品中文欧美| 国产精品夜夜嗨| 国产成人在线影院| 欧美a级一区二区| 狠狠久久亚洲欧美| 高清在线观看日韩| 91在线你懂得| 99热99精品| 欧美丰满少妇xxxxx高潮对白| 一本大道久久a久久综合| 91色porny蝌蚪| 欧美日韩一区成人| 欧美精品一区二区三区高清aⅴ| 精品成人在线观看| 国产色爱av资源综合区| 国产精品素人视频| 一区二区三区日韩在线观看| 一区二区国产盗摄色噜噜| 亚洲成av人片www| 麻豆国产欧美日韩综合精品二区 | 欧美日本一道本| 日韩免费性生活视频播放| 久久久午夜精品理论片中文字幕| 国产日韩成人精品| 亚洲精品视频在线观看网站| 蜜臀av一区二区| 丁香激情综合国产| 欧美最猛黑人xxxxx猛交|