【发布时间】:2015-12-11 05:42:59
【问题描述】:
我有两个字符串列表,它们实际上是数据库中主键的值:
List<string> hisSpecialtyKeysInDB = this.Repository.GetSpecialtyKeysOfThisProvider(providerKey);
List<string> hisAddressKeysInDB = this.Repository.GetAddressKeysOfThisProvider(providerKey);
它们中的任何一个都可能有价值,也可能没有价值。
我想要这两个列表可能具有的这些主键的所有可能组合的组合。 (例如,如果一个有 3 个项目,另一个有两个项目,我想看 6 个项目)
我在下面写了这个查询,但它的计数为零,这是错误的。 在我的测试中,其中一个包含零项,另一个包含三个,所以我希望返回三个。可以将空的作为string.Empty,这对我来说很好。
var temp = from ps in hisAddressKeysInDB
from pa in hisSpecialtyKeysInDB
select new
{
PS = ps,
PA = pa
};
int xxxxx = temp.Count();
【问题讨论】:
-
如果 string.Empty 可以很好地表示一个空列表,为什么不把它放到一个空列表中呢?
if (hisSpecialtyKeysInDB.Count == 0) hisSpecialtyKeysInDB.Add(string.Empty);