使用<;创建泛型类型的c#实例;cfobject>;在BlueDragon.NET';ColdFusion的实现

使用<;创建泛型类型的c#实例;cfobject>;在BlueDragon.NET';ColdFusion的实现,c#,.net,generics,coldfusion,bluedragon,C#,.net,Generics,Coldfusion,Bluedragon,使用新的亚特兰大BlueDragon.NET实现的ColdFusion,我们能够使用cold fusion标记创建C#.NET对象的实例。例如: <cfobject name="list" type=".net" action="CREATE" class="System.Collections.ArrayList"> 但是,当使用我们自己的程序集限定类时,如下所示: namespace Foo.Bar.Bam { public class MyClassName }

使用新的亚特兰大BlueDragon.NET实现的ColdFusion,我们能够使用cold fusion标记创建C#.NET对象的实例。例如:

<cfobject name="list" type=".net" action="CREATE"
 class="System.Collections.ArrayList">
但是,当使用我们自己的程序集限定类时,如下所示:

namespace Foo.Bar.Bam
{
    public class MyClassName
}
编译到程序集
Foo.Bar.dll
并像这样使用:

<cfobject name="list" type=".net" action="CREATE"
 class="System.Collections.Generic.List`1[[Foo.Bar.Bam.MyClassName,Foo.Bar]]">
在没有装配鉴定的情况下,它会失败,并出现CFML错误:

Failed to load class, System.Collections.Generic.List`1[[Foo.Bar.Bam.MyClassName]]

有没有办法使用创建泛型类型的实例?

您必须指定程序集(dll)的名称,而不是关键字
Assembly

鉴于:

namespace Me
{
   public class Foo { }
}
并编译成MyStuff.Dll;这门课将是

class="System.Collections.Generic.List`1[[Me.Foo, MyStuff]]">
编辑问题以澄清(“Assembly”只是一个示例程序集名称,而不是对关键字“Assembly”或System.Reflection.Assembly类的任何引用)
namespace Me
{
   public class Foo { }
}
class="System.Collections.Generic.List`1[[Me.Foo, MyStuff]]">