我想使用EdgeJS應用程序中的Roslyn庫,但不知道如何正確引用它。這是有問題的代碼:如何從EdgeJS應用程序引用Roslyn程序集?
var edge = require('edge');
var toroslyn = edge.func(function(){/*
using System;
using System.Threading.Tasks;
using Microsoft.CodeAnalysis.CSharp.Scripting;
public class Startup
{
public async Task<object> Invoke(object code)
{
return await CSharpScript.EvaluateAsync("1 + 2");
}
}
*/
});
toroslyn(null, function (error, result) { console.log(result); });
而且project.json:
{
"dependencies": {
"Microsoft.CodeAnalysis.CSharp.Scripting": "1.1.1",
},
"frameworks": {
"dnxcore50": {}
}
}
如果這樣做dnu restore
後它只是工作,因爲就是這將是很好,但documentation狀態我需要引用依賴關係內嵌如#r "Microsoft.CodeAnalysis.CSharp.Scripting.dll"
。
但是,爲了使其工作,我需要指定程序集的整個路徑,例如#r "C:/Users/Christian/.dnx/packages/....../Microsoft.CodeAnalysis.CSharp.Scripting.dll"
,或者確保所有相關程序集與我的節點應用程序位於同一文件夾中。
這些是我有的兩個選擇還是我錯過了什麼?