gpt4 book ai didi

c# - 如何在 ColdFusion 中使用 C#.NET 程序集?

转载 作者:行者123 更新时间:2023-12-04 15:29:15 25 4
gpt4 key购买 nike

我的公司有一个用 ColdFusion 编写的 Web 应用程序,我正在尝试集成一个用 C#.Net 编写的 API。我对 .Net 开发还很陌生,所以我可能不太了解术语。我创建了一个非常简单的 C# 类来测试 ColdFusion,它定义如下:

namespace FIX
{
public class IntegersTest
{
public int Add(int n, int m)
{
return n + m;
}
}
}

我能够构建此类并输出一个 .dll (FIX.dll)。现在,我使用以下代码创建一个 ColdFusion 文件:

<cfobject type="dotnet" class="FIX.IntegerTest" name="math" action="create"
assembly="C:\path\to\file\FIX.dll">

当我尝试运行它时,出现以下错误:

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

并且在 dotnet 错误日志中我看到“正在中止代理生成,因为在依赖类列表中找不到任何类。这可能意味着类 FIX.IntegerTest 不存在于程序集中。”

我已尝试重新安装 ColdFusion .Net 服务以及 ColdFusion 本身。我尝试以 .Net Framework 3.0 为目标并重新构建类。我为 cfobject 标签的类属性尝试了多种变体。我不太确定还能做什么。

需要注意的是,下面的 ColdFusion 代码不会报错:

<cfobject type="dotnet" name="sidiClass" class="System.IO.DriveInfo">

我正在使用 Visual Studio 2019、ColdFusion 2018,并将我的测试项目的目标框架设置为 .NET 4.7.2。任何和所有输入将不胜感激!谢谢。

编辑正如@Ageax 指出的那样,我刚刚打错了字,但即使我确保拼写正确,我还是在另一个类上得到了这个。答案是目标框架。 ColdFusion 不喜欢我以 .Net Framework 3.0 为目标(由于某些原因,第二个项目不允许我切换到 4.0+)。我用正确的目标框架创建了一个新项目,一切似乎都在工作!

最佳答案

正如@Ageax 所指出的,我刚刚打错了字,但我在另一个类上得到了这个,尽管我确保拼写是正确的。答案是目标框架。 ColdFusion 不喜欢我以 .Net Framework 3.0 为目标(由于某些原因,第二个项目不允许我切换到 4.0+)。我创建了一个具有适当目标框架 (4.7.2) 的新项目,一切似乎都在工作!

关于c# - 如何在 ColdFusion 中使用 C#.NET 程序集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61602164/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com