Questions tagged «rationale»

6
DBNull的意义是什么?
在.NET中,存在一个null引用,该引用到处都用于表示对象引用为空,然后是DBNull,该引用由数据库驱动程序(和其他一些驱动程序)用来表示...几乎是同一件事。自然,这会引起很多混乱,必须转换转换例程,等等。 那么,最初的.NET作者为什么决定这样做呢?对我而言,这没有任何意义。他们的文档也没有意义: DBNull类表示一个不存在的值。例如,在数据库中,表行中的列可能不包含任何数据。即,该列被认为根本不存在,而不仅仅是没有值。DBNull对象表示不存在的列。此外,COM互操作使用DBNull类来区分VT_NULL变体和VT_EMPTY变体,VT_NULL变体表示不存在的值,而VT_EMPTY变体表示未指定的值。 关于“不存在的列”的废话是什么?有一列存在,只是没有特定行的值。如果不存在,则尝试访问特定单元格时会出现异常,而不是DBNull!我可以理解需要区分VT_NULL和VT_EMPTY,但是为什么不COMEmpty上课呢?这将更适合整个.NET框架。 我想念什么吗?谁能说出为什么DBNull发明以及它可以解决什么问题?

2
'git submodule init'的意义是什么?
背景 要填充存储库的子模块,通常会调用: git submodule init git submodule update 在这种用法中,git submodule init似乎只做一件事:.git/config使用中已有的信息填充.gitmodules。 这有什么意义呢? 不能git submodule update简单地使用来自的信息.gitmodules?这样可以避免: 不必要的命令(git submodule init); 和 不必要的数据重复(将.gitmodules内容放入.git/config)。 题 要么: 有一些git submodule init我不知道的用例(在这种情况下,请赐教!);要不然 git submodule init 是可以在Git中弃用而不会造成任何损害的残骸。 以下哪项是正确的?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.