使用亚音速2.2,我有这样的查询:

string q = @"SELECT Media.Id, Media.Title FROM Media WHERE Media.UserId = 7"
DAL.MediumCollection matches = new InlineQuery().ExecuteAsCollection<DAL.MediumCollection>(q).Load();

通过在“媒体”表中的每一单个条目“匹配”结果循环。

然而,当我这样做:

IDataReader reader = new InlineQuery().ExecuteReader(q);

它返回正确的行。为什么ExecuteAsCollection返回一些东西的ExecuteReader完全不同?有没有其他人经历这种奇怪的行为?

有帮助吗?

解决方案

我想这是因为你调用.Load()。这是覆盖原始查询。

其他提示

ExecuteAsCollection()应该这样做。

当你调用load()方法,它只是喜欢做new DAL.MediumCollection().Load()返回表中的所有数据。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top