公司的 .NET Framework 3.5 Web Form 的老项目遇到个问题,就是输出的 PDF 数据流在Microsoft Edge浏览器里不显示。但在其它浏览器里就没问题。 用Google大法找到了问题的答案:“Microsoft Edge PDF inline issue” Same Issue Again.
学无止境
理解得越多,需要记忆的越少
2016-10-13
2016-10-12
方法来自 stackoverflow,注释中标明了具体的代码出处位置。
1 | /* the following methods have high performance and come from: http://stackoverflow.com/a/24343727/2753545 */ |
2016-10-09
C#是从 C# 4.0(随着 .NET Framework 4和VS 2010)开始支持可选参数的。具体来说,就是可以用C#写如下的代码:
1 | public int Add(int a, int b = 5) |
在这之前,通常是使用方法重载来达到相同目的:
1 | public int Add(int a, int b) |
实际上,我们完全可以通过2个Attribute来达到可选参数的目的。这2个Attribute存在于System.Runtime.InteropServices命名空间,分别为:
OptionalAttributeDefaultParameterValueAttribute
代码看起来是这样:
1 | public int Add(int a, [Optional][DefaultParameterValue(5)]int b) |
这2个Attribute自 .NET Framework 1.1时代就有了,惭愧我现在才知道……
2016-10-09
很简单,一句话使用System.NET.WebUtility类。它提供HtmlEncode, HtmlDecode, UrlEncode, UrlDecode等方法。
2016-10-08
在配置Bamboo的时候,为了让Bamboo显示测试结果,需要让我们的XUnit将测试结果输出为XML文件,这不是问题,问题是Bamboo只支持解析NUnit格式的XML文件。那么有办法让XUnit输出NUnit格式的XML文件吗?答案是暂时没办法。但是有个替代方法,就是利用XSLT把XUnit的XML文件转换为NUnit的XML文件,为此,我们需要2样东西:
最后是相关的命令:
运行测试输出XUnit的测试结果:
dotnet test rootFolderOfTestProject -xml xunitResult.xml将XUnit的XML文件转换为NUnit的XML文件:
msxsl.exe xunitResult.xml NUnitXml.xslt -o nunitResult.xml