我一直在使用 edge.js 从我的 Node.js 应用程序中调用 C# 函数,但是当我去执行 C# 代码时,例如:
找不到元数据文件“System.Collections.Generic.dll”
找不到元数据文件“System.Text.dll”
...
我的代码如下,基本上是想使用我从 C# 调用的存储过程来运行 SSIS 包。基本上我所有引用的dll都找不到?我应该把 dll 放在哪里才能找到它们?
var executeSQL = edge.func(function() {
/*
#r "System.Data.dll"
#r "System.Collections.Generic.dll"
#r "System.Linq.dll"
#r "System.Text.dll"
using System.Linq;
using System.Text;
using System.Data;
using System.Collections.Generic;
using System.Threading.Tasks;
public class StartUp
{
public async Task<object> Invoke(object input)
{
string result = string.Empty;
string packagePath = @"\SSISDB\test\package.dtsx";
string spName = "storedProcName";
using (var conn = new System.Data.SqlClient.SqlConnection("connectionString"))
using (var command = new System.Data.SqlClient.SqlCommand(spName, conn)
{
CommandType = System.Data.CommandType.StoredProcedure
})
{
conn.Open();
command.Parameters.AddWithValue("@PackagePath", packagePath);
command.ExecuteNonQuery();
Console.WriteLine("Finished");
};
return null;
}
}
*/
});
我知道我可以在没有 C# 的情况下做到这一点,只需使用节点中的模块(如 mssql)来执行存储过程,但这只是习惯使用 edge.js 的示例测试