从运行ColdFusion的.NET的DLL(Running .NET dll from coldf

2019-09-21 18:57发布

我已经做了很多的搜索,也做了,我已经找到了建议,但似乎没有奏效。 返回一些最简单的C#DLL文件:

namespace TestClass
{
    public class Class1
    {
        public int tester()
        {
            return 5;
        }
    }
}

ColdFusion的代码:

<cfobject type=".NET" name="myDLL" class="TestClass.Class1" assembly="d:/path/to/dll/TestClass.dll">

我所有的努力都使我这个错误:

Class TestClass.Class12 not found in the specified assembly list. 
The assembly that contains the class must be provided to the assembly attribute. 

我不知道问题出在哪里可以。 任何帮助将不胜感激。

此外,下面的代码不工作:

<cfobject type=".NET" name="seClass" class="System.Environment">
<cfoutput>#seClass.Get_Version().ToString()#</cfoutput>

Answer 1:

这可能是一些棘手的试验和错误得到这个权利。 但误差指的是可能是它可以在JNBridge的目录(路径到此目录取决于你如何设置你的服务器而异)中发现的JNBDOtNetSide.exe.config文件的一部分的组件列表。

在文件中,你会发现下注释掉XML节点<jnibridge>看起来像这样。

   <!--
    <assemblyList>
        <assembly file="path to first .NET-side assembly"/>
        <assembly file="path to second .NET-side assembly"/>
    </assemblyList>
    -->

你可以尝试把你的路径存在并重新启动该服务。 其他值得一试 - 添加程序集到全局缓存和(最后)删除了在WEB-INF instnatiated核心代理jar文件。 如果你搜索我的“.NET集成”博客(coldfusionmuse.com),你会发现,可能让你开始一些额外的线索。 很多在我的经验,试验和这里虽然错误。



文章来源: Running .NET dll from coldfusion