小编Gur*_*ion的帖子

Xml序列化 - 隐藏空值

使用标准.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)

.net c# xml-serialization

117
推荐指数
4
解决办法
9万
查看次数

使用列表数组 - 最佳实践

我有一个#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)

c#

7
推荐指数
2
解决办法
1844
查看次数

如何配置File.OpenRead()

如何正确处理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.

c# dispose

4
推荐指数
1
解决办法
9627
查看次数

.indexOf获得多个结果

假设我有一个文本,我想找到每个逗号的位置.字符串是一个较短的版本,如下所示:

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)

是否有另一种更优化的方法?

.net c#

3
推荐指数
3
解决办法
2万
查看次数

标签 统计

c# ×4

.net ×2

dispose ×1

xml-serialization ×1