Me gustaría implementar el registro en mi aplicación, pero prefiero no usar marcos externos como log4net.
Entonces, me gustaría hacer algo como el eco de DOS en un archivo. ¿Cuál es la forma más eficaz de hacerlo?
¿Hay alguna forma de registrar las excepciones no controladas registradas sin utilizar un marco externo?
Respuestas:
Para más información MSDN
fuente
using
archivo, aunque dado que es local para un método, se eliminará pronto de todos modos.file.WriteLine(lines);
lanza una excepción, el código nunca llegaráfile.Close();
. Hacer uso deusing
es un equivalente detry { // using block } finally { // Dispose }
. Esto significa que el objeto se eliminará incluso si el código dentro delusing
bloque arroja una excepción,¿Por qué? Log4net probablemente abordaría la mayoría de sus requisitos. Por ejemplo, consulte esta clase: RollingFileAppender .
Log4net está bien documentado y hay miles de recursos y casos de uso en la web.
fuente
Puede escribir directamente en un registro de eventos. Consulte los siguientes enlaces:
http://support.microsoft.com/kb/307024
http://msdn.microsoft.com/en-us/library/system.diagnostics.eventlog.aspx
Y aquí está la muestra de MSDN:
fuente
Si está buscando una forma realmente simple de iniciar sesión, puede usar este revestimiento. Si el archivo no existe, se crea.
fuente
Solía escribir mi propio registro de errores hasta que descubrí ELMAH . Nunca he podido conseguir que la parte de envío de correos electrónicos sea tan perfecta como lo hace ELMAH.
fuente
Si desea permanecer cerca de .NET, consulte el Bloque de aplicaciones de registro de biblioteca empresarial . Mira aquí . O para un tutorial de inicio rápido, consulte esto . He utilizado la aplicación de validación Block de la biblioteca empresarial y realmente se adapta a mis necesidades y es muy fácil de "heredar" (¡instalarla y consultarla!) En su proyecto.
fuente
Si desea su propio registro de errores personalizado, puede escribir fácilmente su propio código. Te daré un fragmento de uno de mis proyectos.
Luego, para escribir realmente en el registro de errores, simplemente escriba (
q
siendo la excepción detectada)fuente