使用标准.NET Xml Serializer时,有什么办法可以隐藏所有空值吗?以下是我班级输出的一个例子.如果它们被设置为null,我不想输出可空整数.
当前的Xml输出:
<?xml version="1.0" encoding="utf-8"?>
<myClass>
<myNullableInt p2:nil="true" xmlns:p2="http://www.w3.org/2001/XMLSchema-instance" />
<myOtherInt>-1</myOtherInt>
</myClass>
Run Code Online (Sandbox Code Playgroud)
我想要的是:
<?xml version="1.0" encoding="utf-8"?>
<myClass>
<myOtherInt>-1</myOtherInt>
</myClass>
Run Code Online (Sandbox Code Playgroud) 我有一个#newbie问题.以下两个中的优良做法是什么?...并且列表比数组更慢或更快?
//Method 1
int[] i_array = { 2, 0, 110, 53455, 2223 };
if (someBolean)
{
Array.Resize(ref i_array, i_array.Length + 1);
i_array[i_array.Length - 1] = someIntValue;
}
//Method 2
var i_list = new List<int>();
i_list.AddRange(new int[] { 2, 0, 110, 53455, 2223 });
if (someBolean)
i_list.Add(someIntValue);
Run Code Online (Sandbox Code Playgroud) 如何正确处理File.OpenRead().我目前正在使用以下代码?
using (BinaryReader br = new BinaryReader(File.OpenRead(path)))
{
myByte = br.ReadByte();
}
Run Code Online (Sandbox Code Playgroud)
在分析代码时,我在Visual Studio中获得以下内容:
警告1 CA2000:Microsoft.Reliability:在方法'Program.Main(string [])'中,对象'File.OpenRead(path)'未沿所有异常路径放置.对所有对它的引用都超出范围之前,在对象'File.OpenRead(path)'上调用System.IDisposable.Dispose.
假设我有一个文本,我想找到每个逗号的位置.字符串是一个较短的版本,如下所示:
string s = "A lot, of text, with commas, here and,there";
Run Code Online (Sandbox Code Playgroud)
理想情况下,我会使用类似的东西:
int[] i = s.indexOf(',');
Run Code Online (Sandbox Code Playgroud)
但由于indexOf只返回第一个逗号,我改为:
List<int> list = new List<int>();
for (int i = 0; i < s.Length; i++)
{
if (s[i] == ',')
list.Add(i);
}
Run Code Online (Sandbox Code Playgroud)
是否有另一种更优化的方法?