{"id":3750,"date":"2023-06-11T12:52:15","date_gmt":"2023-06-11T04:52:15","guid":{"rendered":"https:\/\/lonelinerd.com\/?p=3750"},"modified":"2023-06-11T13:04:51","modified_gmt":"2023-06-11T05:04:51","slug":"exception-handle","status":"publish","type":"post","link":"https:\/\/lonelinerd.com\/index.php\/2023\/06\/11\/exception-handle\/","title":{"rendered":"C#\u7b46\u8a18 \u2013 \u7570\u5e38\u8655\u7406"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"3750\" class=\"elementor elementor-3750\">\n\t\t\t\t\t\t<div class=\"elementor-inner\">\n\t\t\t\t<div class=\"elementor-section-wrap\">\n\t\t\t\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-1e55d9fa elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"1e55d9fa\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t\t\t<div class=\"elementor-row\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-17f81f1c\" data-id=\"17f81f1c\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-column-wrap elementor-element-populated\">\n\t\t\t\t\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-467ba243 elementor-widget elementor-widget-text-editor\" data-id=\"467ba243\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t<div class=\"elementor-text-editor elementor-clearfix\">\n\t\t\t\t<!-- wp:paragraph -->\n<p><\/p>\n<!-- \/wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><\/p>\n<!-- \/wp:paragraph -->\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-18bc463 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"18bc463\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t\t\t<div class=\"elementor-row\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-862ade3\" data-id=\"862ade3\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-column-wrap elementor-element-populated\">\n\t\t\t\t\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-a3c5bee elementor-widget elementor-widget-text-editor\" data-id=\"a3c5bee\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t<div class=\"elementor-text-editor elementor-clearfix\">\n\t\t\t\t<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain md-expand\">\u7570\u5e38<\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u6210\u54e1\u6c92\u6709\u5b8c\u6210\u5b83\u7684\u540d\u7a31\u6240\u5ba3\u7a31\u7684\u884c\u52d5<\/span><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">C#\u4e2d\u7684\u7570\u5e38\u8655\u7406\u4f7f\u7528<\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<pre class=\"md-fences md-end-block ty-contain-cm modeLoaded\" lang=\"C#\" spellcheck=\"false\"><span role=\"presentation\"><span class=\"cm-keyword\">public<\/span> <span class=\"cm-keyword\">static<\/span> <span class=\"cm-keyword\">void<\/span> <span class=\"cm-variable\">ExceptionControl<\/span>()<\/span><br \/><span role=\"presentation\">{<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0<span class=\"cm-variable-3\">string<\/span> <span class=\"cm-variable\">a<\/span> <span class=\"cm-operator\">=<\/span> <span class=\"cm-atom\">null<\/span>;<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0<span class=\"cm-keyword\">try<\/span><\/span><br \/><span role=\"presentation\"> \u00a0  {<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0 \u00a0 \u00a0<span class=\"cm-variable\">a<\/span>.<span class=\"cm-variable\">Contains<\/span>(<span class=\"cm-string\">\"Str\"<\/span>);<\/span><br \/><span role=\"presentation\"> \u00a0  }<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0<span class=\"cm-keyword\">catch<\/span> (<span class=\"cm-variable\">NullReferenceException<\/span> <span class=\"cm-variable\">e<\/span>)<\/span><br \/><span role=\"presentation\"> \u00a0  {<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0 \u00a0 \u00a0<span class=\"cm-variable\">Console<\/span>.<span class=\"cm-variable\">WriteLine<\/span>(<span class=\"cm-string\">\"Null Reference Exception Caught!\"<\/span>);<\/span><br \/><span role=\"presentation\"> \u00a0  }<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0<span class=\"cm-keyword\">catch<\/span><\/span><br \/><span role=\"presentation\"> \u00a0  {<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0 \u00a0 \u00a0<span class=\"cm-variable\">Console<\/span>.<span class=\"cm-variable\">WriteLine<\/span>(<span class=\"cm-string\">\"Some Exception Caught\"<\/span>);<\/span><br \/><span role=\"presentation\"> \u00a0  }<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0<span class=\"cm-keyword\">finally<\/span><\/span><br \/><span role=\"presentation\"> \u00a0  {<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0 \u00a0 \u00a0<span class=\"cm-variable\">Console<\/span>.<span class=\"cm-variable\">WriteLine<\/span>(<span class=\"cm-string\">\"Exception Test Finished\"<\/span>);<\/span><br \/><span role=\"presentation\"> \u00a0  }<\/span><br \/><span role=\"presentation\">}<\/span><\/pre>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">try\u584a<\/span><\/span><\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u61c9\u5305\u542b\u4ee5\u4e0b\u985e\u578b\u7684\u4ee3\u78bc<\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u9700\u8981\u57f7\u884c\u7684<\/span><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u8cc7\u6e90\u6e05\u7406\u64cd\u4f5c<\/span><\/span><\/span><span class=\"md-plain\">\u7684\u4ee3\u78bc<\/span><\/p>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u9700\u8981<\/span><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u5f9e\u7570\u5e38\u4e2d\u6062\u5fa9<\/span><\/span><\/span><span class=\"md-plain\">\u7684\u4ee3\u78bc<\/span><\/p>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u53ef\u80fd\u6703\u62cb\u51fa\u7570\u5e38<\/span><\/span><\/span><span class=\"md-plain\">\u7684\u4ee3\u78bc<\/span><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u4e00\u500btry\u584a\u81f3\u5c11\u8981\u6709\u4e00\u500b\u95dc\u806f\u7684catch\u584a\/finally\u584a<\/span><\/span><\/span><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">catch\u584a<\/span><\/span><\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u97ff\u61c9\u4e00\u500b\u7570\u5e38\u9700\u8981\u57f7\u884c\u7684\u4ee3\u78bc<\/span><\/p>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u53ef\u4ee5\u6709<\/span><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">0\u500b\u6216\u591a\u500b<\/span><\/span><\/span><span class=\"md-plain\">catch\u584a<\/span><\/p>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u5982\u679ctry\u584a\u4ee3\u78bc<\/span><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u6c92\u6709\u9020\u6210\u7570\u5e38\u7684\u62cb\u51fa\uff0c\u5247\u6c38\u9060\u4e0d\u6703\u57f7\u884c<\/span><\/span><\/span><span class=\"md-plain\">\u4efb\u4f55catch\u584a\uff0c\u76f4\u63a5\u57f7\u884cfinally\u584a\uff08\u5982\u6709\uff09<\/span><\/p>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">catch\u584a\u5f8c\u7684\u5713\u62ec\u865f\u4e2d\u7684\u8868\u9054\u5f0f\u70ba<\/span><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u300c\u6355\u6349\u985e\u578b\u300d<\/span><\/span><\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u8a72\u985e\u578b\u5fc5\u9808<\/span><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u6d3e\u751f\u81eaSystem.Exception<\/span><\/span><\/span><\/p>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u5982\u679c\u53ea\u6709catch\u95dc\u9375\u5b57\uff0c\u6c92\u6709\u6307\u5b9a\u4efb\u4f55\u6355\u6349\u985e\u578b\uff0c\u4ee3\u8868\u6355\u6349\u9664\u4e86\u4e0a\u9762catch\u584a\u6307\u5b9a\u4e86\u7684\u5177\u9ad4\u6355\u6349\u985e\u578b\u4ee5\u5916\u7684\u6355\u6349\u985e\u578b<\/span><\/span><\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u5982\u679c\u5728\u6355\u6349\u985e\u578b\u5f8c\u6307\u5b9a\u4e00\u500b\u8b8a\u91cf\uff0c\u8a72\u8b8a\u91cf\u5c07\u5f15\u7528\u62cb\u51fa\u7684System.Exception\u6d3e\u751f\u5c0d\u8c61<\/span><\/span><\/span><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">CLR\u81ea\u4e0a\u800c\u4e0b\u641c\u7d22\u5339\u914d\u7684catch\u584a\uff0c\u56e0\u6b64\u8d8a\u662f\u5177\u9ad4\u7684\uff08\u5f9eSystem.Exception\u6d3e\u751f\u5f97\u8d8a\u9060\uff09\u7684\u7570\u5e38\uff0c\u61c9\u6700\u5148\u88ab\u6355\u6349<\/span><\/span><\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u5982\u679c\u641c\u7d22\u904e\u5f8c\uff0c\u6c92\u6709\u4efb\u4f55\u6355\u6349\u985e\u578b\u8207\u62cb\u51fa\u7684\u7570\u5e38\u5339\u914d\uff0cCLR\u6703\u53bb\u8abf\u7528\u68e7\u66f4\u9ad8\u7684\u4e00\u5c64\u5617\u8a66\u641c\u7d22\u5339\u914d\u7684\u7570\u5e38\u6355\u6349\u985e\u578b<\/span><\/span><\/span><\/p>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u4e00\u65e6\u627e\u5230\uff0c\u5c31\u6703\u57f7\u884c\u300c\u5167\u5c64\u300d\u7684\u6240\u6709finally\u584a\u4ee3\u78bc<\/span><\/span><\/span><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">finally\u584a<\/span><\/span><\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u4fdd\u8b49\u6703\u57f7\u884c<\/span><\/span><\/span><\/p>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u4e00\u822c\u57f7\u884ctry\u584a\u884c\u52d5\u6240\u8981\u6c42\u7684<\/span><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u8cc7\u6e90\u6e05\u7406\u64cd\u4f5c<\/span><\/span><\/span><\/p>\n<\/li>\n<li class=\"md-list-item\">\n<pre class=\"md-fences md-end-block ty-contain-cm modeLoaded\" lang=\"C#\" spellcheck=\"false\"><span role=\"presentation\"><span class=\"cm-keyword\">public<\/span> <span class=\"cm-keyword\">static<\/span> <span class=\"cm-keyword\">void<\/span> <span class=\"cm-variable\">ReadData<\/span>(<span class=\"cm-variable-3\">string<\/span> <span class=\"cm-variable\">path<\/span>)<\/span><br \/><span role=\"presentation\">{<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0<span class=\"cm-variable\">FileStream<\/span> <span class=\"cm-variable\">fs<\/span> <span class=\"cm-operator\">=<\/span> <span class=\"cm-atom\">null<\/span>;<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0<span class=\"cm-keyword\">try<\/span><\/span><br \/><span role=\"presentation\"> \u00a0  {<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0 \u00a0 \u00a0<span class=\"cm-variable\">fs<\/span> <span class=\"cm-operator\">=<\/span> <span class=\"cm-keyword\">new<\/span> <span class=\"cm-variable\">FileStream<\/span>(<span class=\"cm-variable\">path<\/span>, <span class=\"cm-variable\">FileMode<\/span>.<span class=\"cm-variable\">Open<\/span>);<\/span><br \/><span role=\"presentation\"> \u00a0  }<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0<span class=\"cm-keyword\">catch<\/span> (<span class=\"cm-variable\">IOException<\/span>) { }<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0<span class=\"cm-keyword\">finally<\/span><\/span><br \/><span role=\"presentation\"> \u00a0  {<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0 \u00a0 \u00a0<span class=\"cm-keyword\">if<\/span>(<span class=\"cm-variable\">fs<\/span> <span class=\"cm-operator\">!=<\/span> <span class=\"cm-atom\">null<\/span>)<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0 \u00a0  {<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0<span class=\"cm-variable\">fs<\/span>.<span class=\"cm-variable\">Close<\/span>();<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0 \u00a0  } \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0<\/span><br \/><span role=\"presentation\"> \u00a0  }<\/span><br \/><span role=\"presentation\">}<\/span><\/pre>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u5982\u5728\u8a72\u6bb5\u4ee3\u78bc\u4e2d\uff0c\u7121\u8ad6try\u4e2d\u7684\u4ee3\u78bc\u6709\u6c92\u6709\u62cb\u51fa\u7570\u5e38\uff0c\u6587\u4ef6\u4fdd\u8b49\u6703\u88abfinally\u4e2d\u7684\u4ee3\u78bc\u6240\u95dc\u9589<\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u5426\u5247\uff0c\u5982\u679c\u6587\u4ef6\u6d41\u95dc\u9589\u7684\u4ee3\u78bc\u653e\u4e86\u5728finally\u584a\u4e4b\u5f8c\u7684\u5730\u65b9\uff0c\u90a3\u7576try\u584a\u62cb\u51fa\u7570\u5e38\u5f8c\uff0cfinally\u584a\u5f8c\u7684\u8a9e\u53e5\u6c92\u6cd5\u88ab\u57f7\u884c\uff0c\u6587\u4ef6\u6d41\u4e5f\u5c31\u7121\u6cd5\u88ab\u95dc\u9589<\/span><\/p>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u56e0\u6b64\uff0c<\/span><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">C#\u7de8\u8b6f\u5668\u770b\u5230\u4e00\u4e9b\u5fc5\u9808\u9032\u884c\u6e05\u7406\u7684\u4ee3\u78bc\uff0c\u6703\u81ea\u52d5\u751f\u6210try\/finally\u584a<\/span><\/span><\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">lock\/using\/foreach\/\u5b9a\u7fa9\u6790\u69cb\u5668<\/span><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u4e00\u500btry\u584a<\/span><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u6700\u591a\u53ea\u80fd\u95dc\u806f\u4e00\u500b<\/span><\/span><\/span><span class=\"md-plain\">finally\u584a<\/span><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h5 class=\"md-end-block md-heading\"><strong><span class=\"md-plain\">System.Exception<\/span><\/strong><\/h5>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u96d6\u7136CLR\u5141\u8a31\u7570\u5e38\u62cb\u51fa\u4efb\u4f55\u985e\u578b\u7684\u5be6\u4f8b\uff0c\u4f46Microsoft\u5b9a\u7fa9\u4e86System.Exception\u985e\uff0c\u4e26<\/span><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u898f\u5b9a\u6240\u6709CLS\u76f8\u5bb9\u7684\u8a9e\u8a00\u90fd\u5fc5\u9808\u80fd\u62cb\u51fa\u548c\u6355\u6349\u6d3e\u751f\u81ea\u8a72\u985e\u578b\u7684\u7570\u5e38<\/span><\/span><\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u6d3e\u751f\u81eaSystem.Exception\u7684\u7570\u5e38\u985e\u578b\u88ab\u8a8d\u70ba\u662fCLS\u76f8\u5bb9\u7684<\/span><\/p>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">C#\u4e5f\u53ea\u5141\u8a31\u62cb\u51faCLS\u76f8\u5bb9\u7684\u7570\u5e38<\/span><\/span><\/span><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">System.Exception\u63d0\u4f9b\u4e86\u4e00\u500b\u552f\u8b80\u7684<\/span><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">StackTrace<\/span><\/span><\/span><span class=\"md-plain\">\u5c6c\u6027<\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">catch\u584a\u53ef\u8b80\u53d6\u8a72\u5c6c\u6027\u4f86\u7372\u53d6\u4e00\u500bstack trace\uff0c\u5b83\u63cf\u8ff0\u4e86\u7570\u5e38\u767c\u751f\u524d\u8abf\u7528\u4e86\u54ea\u4e9b\u65b9\u6cd5<\/span><\/p>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u8a2a\u554f\u8a72\u5c6c\u6027\u6703\u8abf\u7528CLR\u7684\u4ee3\u78bc<\/span><\/span><\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item md-focus-container\">\n<p class=\"md-end-block md-p md-focus\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u4e00\u500b\u7570\u5e38\u62cb\u51fa\u6642\uff0cCLR\u5728\u5167\u90e8\u8a18\u9304throw\u6307\u4ee4\u7684\u4f4d\u7f6e<\/span><\/span><\/span><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-039d5a2 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"039d5a2\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t\t\t<div class=\"elementor-row\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-1b842b7\" data-id=\"1b842b7\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-column-wrap elementor-element-populated\">\n\t\t\t\t\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-7802ef7 elementor-widget elementor-widget-text-editor\" data-id=\"7802ef7\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t<div class=\"elementor-text-editor elementor-clearfix\">\n\t\t\t\t<h5 class=\"md-end-block md-heading md-focus\"><strong><span class=\"md-plain\">\u7d04\u675f\u57f7\u884c\u5340\u57df\uff08CER\uff09<\/span><\/strong><\/h5>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">CER\u662f\u5fc5\u9808\u5c0d\u932f\u8aa4\u6709\u9069\u61c9\u529b\u7684\u4ee3\u78bc\u584a<\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u5728\u62cb\u51fa\u4e86\u975e\u9810\u671f\u7684\u7570\u5e38\u6642\u7dad\u8b77\u72c0\u614b<\/span><\/span><\/span><span class=\"md-plain\">\u975e\u5e38\u6709\u7528<\/span><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">RuntimeHelpers.PrepareConstrainedRegions<\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<pre class=\"md-fences md-end-block ty-contain-cm modeLoaded\" lang=\"C#\" spellcheck=\"false\"><span role=\"presentation\"><span class=\"cm-keyword\">public<\/span> <span class=\"cm-keyword\">static<\/span> <span class=\"cm-keyword\">void<\/span> <span class=\"cm-variable\">Demo<\/span>()<\/span><br \/><span role=\"presentation\">{<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0<span class=\"cm-variable\">RuntimeHelpers<\/span>.<span class=\"cm-variable\">PrepareConstrainedRegions<\/span>();<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0<span class=\"cm-keyword\">try<\/span><\/span><br \/><span role=\"presentation\"> \u00a0  {<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0 \u00a0 \u00a0<span class=\"cm-variable\">Console<\/span>.<span class=\"cm-variable\">WriteLine<\/span>(<span class=\"cm-string\">\"In Try\"<\/span>);<\/span><br \/><span role=\"presentation\"> \u00a0  }<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0<span class=\"cm-keyword\">finally<\/span><\/span><br \/><span role=\"presentation\"> \u00a0  {<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0 \u00a0 \u00a0<span class=\"cm-variable\">Type2<\/span>.<span class=\"cm-variable\">M<\/span>();<\/span><br \/><span role=\"presentation\"> \u00a0  }<\/span><br \/><span role=\"presentation\">}<\/span><br \/><span role=\"presentation\">\u200b<\/span><br \/><span role=\"presentation\"><span class=\"cm-keyword\">public<\/span> <span class=\"cm-keyword\">class<\/span> <span class=\"cm-def\">Type2<\/span><\/span><br \/><span role=\"presentation\">{<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0<span class=\"cm-keyword\">static<\/span> <span class=\"cm-variable\">Type2<\/span>()<\/span><br \/><span role=\"presentation\"> \u00a0  {<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0 \u00a0 \u00a0<span class=\"cm-variable\">Console<\/span>.<span class=\"cm-variable\">WriteLine<\/span>(<span class=\"cm-string\">\"Type2 ctor called\"<\/span>);<\/span><br \/><span role=\"presentation\"> \u00a0  }<\/span><br \/><span role=\"presentation\">\u200b<\/span><br \/><span role=\"presentation\"> \u00a0  [<span class=\"cm-variable\">ReliabilityContract<\/span>(<span class=\"cm-variable\">Consistency<\/span>.<span class=\"cm-variable\">WillNotCorruptState<\/span>, <span class=\"cm-variable\">Cer<\/span>.<span class=\"cm-variable\">Success<\/span>)]<\/span><br \/><span role=\"presentation\"> \u00a0 \u00a0<span class=\"cm-keyword\">public<\/span> <span class=\"cm-keyword\">static<\/span> <span class=\"cm-keyword\">void<\/span> <span class=\"cm-variable\">M<\/span>() { }<\/span><br \/><span role=\"presentation\">}<\/span><\/pre>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">JIT\u7de8\u8b6f\u5668\u5982\u679c\u767c\u73fe\u5728\u4e00\u500btry\u584a\u524d\u8abf\u7528\u4e86<\/span><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">RuntimeHelpers.PrepareConstrainRegions<\/span><\/span><\/span><span class=\"md-plain\">\uff0c\u5c31\u6703<\/span><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u63d0\u524d\u7de8\u8b6f\u8207try\u95dc\u806f\u7684catch\u548cfinally\u584a\u4e2d\u7684\u4ee3\u78bc<\/span><\/span><\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u4f46\u662f\uff0c\u5728catch\/finally\u584a\u88e1\u88ab\u8abf\u7528\u7684\u65b9\u6cd5\uff0c\u5fc5\u9808\u61c9\u7528<\/span><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">ReliabilityContract\u7279\u6027<\/span><\/span><\/span><span class=\"md-plain\">\u3002\u4e14\u50b3\u905e\u4e86Consistency.WillNotCorruptState\/Consistency.MayCorruptInstance\u679a\u8209\u503c<\/span><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-f882bbe elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"f882bbe\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t\t\t<div class=\"elementor-row\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-f3399ce\" data-id=\"f3399ce\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-column-wrap elementor-element-populated\">\n\t\t\t\t\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-9fabc16 elementor-widget elementor-widget-text-editor\" data-id=\"9fabc16\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t<div class=\"elementor-text-editor elementor-clearfix\">\n\t\t\t\t<h5 class=\"md-end-block md-heading\"><strong><span class=\"md-plain\">\u4ee3\u78bc\u5354\u5b9a<\/span><\/strong><\/h5>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-plain\">\u4ee3\u78bc\u5354\u5b9a\u63d0\u4f9b\u4e86\u76f4\u63a5\u5728\u4ee3\u78bc\u4e2d\u8072\u660e\u4ee3\u78bc\u8a2d\u8a08\u6c7a\u7b56\u7684\u4e00\u7a2e\u65b9\u5f0f<\/span><\/p>\n<ul class=\"ul-list\" data-mark=\"-\">\n<li class=\"md-list-item md-focus-container\">\n<p class=\"md-end-block md-p md-focus\"><span class=\"md-html-inline md-expand\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u524d\u689d\u4ef6\uff1a\u9a57\u8b49\u5be6\u53c3<\/span><\/span><\/span><\/p>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u5f8c\u689d\u4ef6\uff1a\u65b9\u6cd5\u56e0\u8fd4\u56de\/\u62cb\u51fa\u7570\u5e38\u800c\u7d42\u6b62\u6642\uff0c\u5c0d\u72c0\u614b\u9032\u884c\u9a57\u8b49<\/span><\/span><\/span><\/p>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p\"><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">\u5c0d\u8c61\u4e0d\u8b8a\u6027\uff1a\u5728\u5c0d\u8c61\u751f\u547d\u671f\u5167\u78ba\u4fdd\u5c0d\u8c61\u7684\u5b57\u6bb5\u7684\u826f\u597d\u72c0\u614b<\/span><\/span><\/span><\/p>\n<\/li>\n<\/ul>\n<\/li>\n<li class=\"md-list-item\">\n<p class=\"md-end-block md-p md-focus\"><span class=\"md-plain\">\u6838\u5fc3\u70ba\u975c\u614b\u985e\uff1a<\/span><span class=\"md-html-inline\" spellcheck=\"false\"><span style=\"color: red;\"><span class=\"md-plain\">System.Diagnostics.Contracts.Contract<\/span><\/span><\/span><\/p>\n<\/li>\n<\/ul>\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-1d6196c elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"1d6196c\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t\t\t<div class=\"elementor-row\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-dc92ccb\" data-id=\"dc92ccb\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-column-wrap elementor-element-populated\">\n\t\t\t\t\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-5c94071 elementor-widget-divider--view-line elementor-widget elementor-widget-divider\" data-id=\"5c94071\" data-element_type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-578b096 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"578b096\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t\t\t<div class=\"elementor-row\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-2c7ad93\" data-id=\"2c7ad93\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-column-wrap elementor-element-populated\">\n\t\t\t\t\t\t\t<div class=\"elementor-widget-wrap\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-35f933f elementor-widget elementor-widget-text-editor\" data-id=\"35f933f\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t<div class=\"elementor-text-editor elementor-clearfix\">\n\t\t\t\t<h4 class=\"md-end-block md-heading\"><span style=\"text-decoration: underline;\"><strong><span class=\"md-plain md-expand\">\u53c3\u8003\u66f8\u76ee<\/span><\/strong><\/span><\/h4><ul class=\"ul-list\" data-mark=\"-\"><li class=\"md-list-item md-focus-container\">\u300aCLR via C#\u300b\uff08\u7b2c4\u7248\uff09 Jeffrey Richter<\/li><\/ul>\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\u7570\u5e38\u8655\u7406\u901a\u904etry\u584a\u57f7\u884c\u53ef\u80fd\u6703\u51fa\u73fe\u7570\u5e38\u7684\u4ee3\u78bc\uff1b\u7dca\u63a5\u8457\u7528catch\u4f86\u6355\u6349Exception\u985e\u5b9a\u7fa9\u7684\u7570\u5e38\uff1b\u6700\u5f8c\u5728finally\u584a\u57f7\u884c\u7570\u5e38\u5f8c\u4ecd\u7136\u9700\u8981\u57f7\u884c\u7684\u5f8c\u7e8c\u64cd\u4f5c<\/p>\n","protected":false},"author":1,"featured_media":947,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,27,18],"tags":[],"class_list":["post-3750","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-reading-notes","category-c-sharp","category-developing"],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/lonelinerd.com\/wp-content\/uploads\/2021\/03\/FeatureCover_ReadingNotes.png","_links":{"self":[{"href":"https:\/\/lonelinerd.com\/index.php\/wp-json\/wp\/v2\/posts\/3750","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lonelinerd.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/lonelinerd.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/lonelinerd.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/lonelinerd.com\/index.php\/wp-json\/wp\/v2\/comments?post=3750"}],"version-history":[{"count":9,"href":"https:\/\/lonelinerd.com\/index.php\/wp-json\/wp\/v2\/posts\/3750\/revisions"}],"predecessor-version":[{"id":3759,"href":"https:\/\/lonelinerd.com\/index.php\/wp-json\/wp\/v2\/posts\/3750\/revisions\/3759"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/lonelinerd.com\/index.php\/wp-json\/wp\/v2\/media\/947"}],"wp:attachment":[{"href":"https:\/\/lonelinerd.com\/index.php\/wp-json\/wp\/v2\/media?parent=3750"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lonelinerd.com\/index.php\/wp-json\/wp\/v2\/categories?post=3750"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lonelinerd.com\/index.php\/wp-json\/wp\/v2\/tags?post=3750"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}