Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 处理C异常时要保存在数据库中的字段_C#_Exception Handling - Fatal编程技术网

C# 处理C异常时要保存在数据库中的字段

C# 处理C异常时要保存在数据库中的字段,c#,exception-handling,C#,Exception Handling,我将在测试阶段向客户处理一个项目,即使用ASP.NET MVC3构建的项目。。我需要的是将发生的所有异常保存到一个持久位置—SQL数据库- 我有一些问题 我应该在数据库中保存哪个字段?味精、微量元素等 我见过人们保存内部异常,但有时我的异常有空的内部异常。 处理错误并保存到数据库的最佳位置是什么。在global.asax中,或在web.config中定义自定义错误页,并使用server.getLastError获取最后一个错误 我应该在数据库中保存哪个字段?味精、微量元素等 尽你所能,如有可能:

我将在测试阶段向客户处理一个项目,即使用ASP.NET MVC3构建的项目。。我需要的是将发生的所有异常保存到一个持久位置—SQL数据库-

我有一些问题

我应该在数据库中保存哪个字段?味精、微量元素等 我见过人们保存内部异常,但有时我的异常有空的内部异常。 处理错误并保存到数据库的最佳位置是什么。在global.asax中,或在web.config中定义自定义错误页,并使用server.getLastError获取最后一个错误 我应该在数据库中保存哪个字段?味精、微量元素等

尽你所能,如有可能:

类型 消息 堆栈跟踪 我见过人们保存内部异常,但有时我的异常有空的内部异常

有些会有不止一个,嵌套的。你应该保存所有你能保存的东西,依你自己的决定。但是你可以把最里面的一个,然后把包含外键的一个添加到最里面的一个,等等,这样你就可以向外工作了

处理错误并保存到数据库的最佳位置是什么

恐怕在那方面我帮不了你。您可能需要考虑异步地执行这些操作,将它们排队。当异常本身可能是数据库错误时,这一点尤其重要-如果您可以建立一个最大大小的队列,当然,这样一旦恢复了任何数据库问题,就可以存储错误,这可能很有用。或者可能先将它们转储到磁盘,然后定期将日志上载到数据库

我应该在数据库中保存哪个字段?味精、微量元素等

尽你所能,如有可能:

类型 消息 堆栈跟踪 我见过人们保存内部异常,但有时我的异常有空的内部异常

有些会有不止一个,嵌套的。你应该保存所有你能保存的东西,依你自己的决定。但是你可以把最里面的一个,然后把包含外键的一个添加到最里面的一个,等等,这样你就可以向外工作了

处理错误并保存到数据库的最佳位置是什么

恐怕在那方面我帮不了你。您可能需要考虑异步地执行这些操作,将它们排队。当异常本身可能是数据库错误时,这一点尤其重要-如果您可以建立一个最大大小的队列,当然,这样一旦恢复了任何数据库问题,就可以存储错误,这可能很有用。或者可能先将它们转储到磁盘,然后定期将日志上载到数据库

正如Jon Skeet所说,您保存的字段越多,您需要诊断问题的数据就越多。就我个人而言,我会将异常序列化并将其放在XML类型列中,如果您有能力这样做的话,请考虑数据库空间和性能。这还将消除第二个问题,因为内部异常也将被序列化。尽管使用这种方法,所有自定义异常都应该能够正确地序列化它们自己。 我建议查看免费提供的错误记录器源代码,以便了解基本概念。 正如Jon Skeet所说,您保存的字段越多,您需要诊断问题的数据就越多。就我个人而言,我会将异常序列化并将其放在XML类型列中,如果您有能力这样做的话,请考虑数据库空间和性能。这还将消除第二个问题,因为内部异常也将被序列化。尽管使用这种方法,所有自定义异常都应该能够正确地序列化它们自己。 我建议查看免费提供的错误记录器源代码,以便了解基本概念。