C# 亚音速自定义集合类型

C# 亚音速自定义集合类型,c#,subsonic,collections,C#,Subsonic,Collections,这似乎是一个简单的问题,但我花了最后一个小时试图解决这个问题 我想创建一个自定义的亚音速集合,这样我就可以使用.ExecuteAsCollection()使用多个联接的查询中的数据来填充它;方法 我已经创建了自定义类和自定义集合,甚至使用load方法创建了一个控制器,但是我一直从ExecuteAsCollection()中得到一个null reference异常 堆栈轨迹显示这是来自亚音速加载方法的错误 我省略了所有其他亚音速类都有的类的“SQLProps”,但我希望我不必费力地遍历每个字段 一

这似乎是一个简单的问题,但我花了最后一个小时试图解决这个问题

我想创建一个自定义的亚音速集合,这样我就可以使用.ExecuteAsCollection()使用多个联接的查询中的数据来填充它;方法

我已经创建了自定义类和自定义集合,甚至使用load方法创建了一个控制器,但是我一直从ExecuteAsCollection()中得到一个null reference异常

堆栈轨迹显示这是来自亚音速加载方法的错误

我省略了所有其他亚音速类都有的类的“SQLProps”,但我希望我不必费力地遍历每个字段

一定有一些简单的东西我错过了。有人谁做了这个给我一个快速运行什么是亚音速需要填写一个查询自定义集合

谢谢 道格

更新:


我忘了提到我还将public Columns结构添加到了我的所有列中。

ExecuteAsCollection()只适用于亚音速生成的集合。可以使用ExecuteTypedList()将查询结果映射到任意对象类型。这将使查询返回的列与具有相同名称的T类型属性相匹配,并为您提供列表。

自定义类属性名称是否与查询列名相同?否,i查询列与数据库相同(亚音速外的不同外壳),即ClubID=ClubID。。。我将尝试一下,列表项类型的属性必须匹配亚音速字段名称(即Pascal cased/multilated),或者它们是否需要匹配数据库字段(可能不是multilated),仅匹配拼写,而不是大小写。