使用<;创建泛型类型的c#实例;cfobject>;在BlueDragon.NET';ColdFusion的实现
使用新的亚特兰大BlueDragon.NET实现的ColdFusion,我们能够使用cold fusion标记创建C#.NET对象的实例。例如:使用<;创建泛型类型的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 }
<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]]">