小编Tar*_*asB的帖子

DataReader [i] vs DataReader.GetValue(i)vs DataReader.GetString(i)

dataReader[i]
Run Code Online (Sandbox Code Playgroud)

在逻辑上相当于

dataReader.GetValue(i)
Run Code Online (Sandbox Code Playgroud)

它们是一样的吗?他们不一样吗?是否存在一种适合另一种情况的情况?

不同的记录:

  • 获取位于指定索引处的列
  • 返回指定字段的值.

但是当我使用它们时,它们都会返回该字段的值."获得专栏"是什么意思?"归还一个领域的价值"是什么意思?


奖金Chatter:

我打电话的时候:

reader[i];
reader.GetValue(i);
reader.GetString(i);
Run Code Online (Sandbox Code Playgroud)

String每次都得到一个

.net ado.net datareader

11
推荐指数
1
解决办法
6343
查看次数

如何断言所有选定的属性都已设置(非空或空)

我想验证(断言)我的DTO对象上的某些属性是否已设置.我试图用Fluent Assertions来做,但以下代码似乎不起作用:

mapped.ShouldHave().Properties(
    x => x.Description,
    ...more
    x => x.Id)
    .Should().NotBeNull(); 
Run Code Online (Sandbox Code Playgroud)

是否可以通过Fluent Assertions或其他工具实现这一目标?Fluent断言具有ShouldBeEquivalentTo,但实际上我只关心那些是不是空/空,所以我无法使用.

当然我可以在每个属性级别上做一个Assert,但是对一些更优雅的方式感兴趣.

.net c# fluent-assertions

7
推荐指数
1
解决办法
8602
查看次数

SQL查询语句结构

我有一个名为Orders Like Table的表:

OrderItemID          CustomerIDNumber          OrderProcessed

1                    9212060068089             False
2                    6412180017080             False
3                    9212060068089             False
4                    5508245127003             False
5                    9212060068089             False
Run Code Online (Sandbox Code Playgroud)

我想做的事情,我似乎真的很难得到正确的,是选择订单处理错误的所有唯一客户ID号.

现在这很简单,通过使用DISTINCT,但我正在努力的TRICKY PART,是我希望客户ID号仍然按订单商品ID维护订单.所以示例输出应该是:

CustomerIDNumber          OrderProcessed

9212060068089             False
6412180017080             False
5508245127003             False
Run Code Online (Sandbox Code Playgroud)

请注意:处理顺序中的所有值都在这里错误,显而易见地在我的表中,对于订单处理将有一些真正的价值.

这是我目前得到的错误输出:

CustomerIDNumber          OrderProcessed

5508245127003             False
6412180017080             False
9212060068089             False
Run Code Online (Sandbox Code Playgroud)

可以看出,它是按升序对客户ID号进行排序,这不是我想要的.

sql sql-server

3
推荐指数
1
解决办法
50
查看次数

使用C#将数字拆分为数百个单位

在C#中将一些给定的较大数字拆分为数百,数十和单位的最佳方法是什么?

例如:如果我输入数字43928,我如何在输出上获得40000 + 3000 + 900 + 20 + 8?

c# string string-split

2
推荐指数
1
解决办法
8782
查看次数