Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Mono找不到MySQL程序集引用_C#_Linux_Mono_.net Assembly_Gac - Fatal编程技术网

C# Mono找不到MySQL程序集引用

C# Mono找不到MySQL程序集引用,c#,linux,mono,.net-assembly,gac,C#,Linux,Mono,.net Assembly,Gac,我在Ubuntu 16.04.7 LTS上很难通过Mono访问MySQL 到目前为止我所做的: 下载MySQL连接器并在一个目录中解压缩zip文件 将MySql.Data.dll程序集添加到gac 在我有测试项目的目录中复制了MySql.Data.dll 将MONO_PATH设置到我的测试项目目录 当我试图编译的时候,我仍然得到 找不到类型或命名空间名称“MySql”(是否缺少 使用指令或组件引用?) 我错过了什么 这是我的测试文件 using System; using MySql.Data;

我在Ubuntu 16.04.7 LTS上很难通过Mono访问MySQL

到目前为止我所做的:

  • 下载MySQL连接器并在一个目录中解压缩zip文件
  • MySql.Data.dll
    程序集添加到gac
  • 在我有测试项目的目录中复制了
    MySql.Data.dll
  • MONO_PATH
    设置到我的测试项目目录
  • 当我试图编译的时候,我仍然得到

    找不到类型或命名空间名称“MySql”(是否缺少 使用指令或组件引用?)

    我错过了什么

    这是我的测试文件

    using System;
    using MySql.Data;
    
    namespace Test
    {
      public class MySqlTest
      {
        public static void Main(string[] args)
        {
          Console.WriteLine("Hello");
        }
      }
    }
    
    
    我是这样编译的

    csc test.cs
    

    需要在编译时直接指向程序集。如果DLL与源代码位于同一目录中,则此操作有效

    比如说,

    csc -r:System.dll -r:System.Data.dll -r:MySql.Data.dll test.cs
    

    编译的命令行是什么?是否要添加对程序集的引用?否@SamiKuhmonen I直接
    csc test.cs
    等待一分钟。。。我以前尝试过csc-r:System.dll-r:System.Data.dll-r:MySql.Data.dll test.cs,但没有成功。现在,它不知怎么起作用了。我一点也不知道。你为什么直接使用
    csc
    ?与项目文件一起调用
    msbuild
    更为常见。这就是说,现在有很多人在Linux上使用.NET Core而不是Mono。我对Mono完全是新手,所以我不知道
    msbuild
    。在官方网站上看到你用csc编译的代码,并为此付出了巨大的努力。(我也使用.NET内核,但现在我必须使用mono@canton7)