我想在Mac OS服务器上编译和运行C#项目。没有GUI可供使用,所以我需要从终端编译并运行它。
我将C#项目的目录从本地复制到服务器。 (我的C#项目是由visual studio for mac创建的。)
在服务器上,我已经安装了mono
。我可以编译并运行基本的C#代码' hello world!'由mcs Program.cs
和mono Program.exe
但我无法编译和运行我的项目。
我的Program.cs
代码是这样的:
using System;
using System.IO;
using MongoDB.Bson;
using MongoDB.Driver;
namespace testMongo
{
class MainClass
{
public static void Main(string[] args)
{
var connectionString = "mongodb://localhost";
var client = new MongoClient(connectionString);
var database = client.GetDatabase("test");
var collection = database.GetCollection<Entity>("user");
//do something
}
}
public class Entity
{
public ObjectId Id { get; set; }
public int user_id { get; set; }
public double[] feature { get; set; }
}
}
但是当我尝试运行mcs Program.cs
时出现此错误
Program.cs(3,7): error CS0246: The type or namespace name 'MongoDB' could not be found. Are you missing an assembly reference?
Program.cs(4,7): error CS0246: The type or namespace name 'MongoDB' could not be found. Are you missing an assembly reference?
Program.cs(5,7): error CS0246: The type or namespace name 'MongoDB' could not be found. Are you missing an assembly reference?
Program.cs(54,16): error CS0246: The type or namespace name 'ObjectId' could not be found. Are you missing an assembly reference?
似乎编译器找不到MongoDB而且我不知道为什么。
谁能告诉我如何解决这个问题?
更新
我可以使用msbuild运行我的项目
我使用msbuild projectname.sln /p:Configuration=Debug
然后我获得projectname.exe
个文件并使用mono projectname.exe