Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.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# 我可以在.NET 2.0或.NET 3.5应用程序中使用Math.NET运行时吗?_C#_.net_Math.net_Mathnet Numerics - Fatal编程技术网

C# 我可以在.NET 2.0或.NET 3.5应用程序中使用Math.NET运行时吗?

C# 我可以在.NET 2.0或.NET 3.5应用程序中使用Math.NET运行时吗?,c#,.net,math.net,mathnet-numerics,C#,.net,Math.net,Mathnet Numerics,我刚下载了Math.NET的最新版本,使用时遇到了一些麻烦 该库是否应该运行在.NET4.0项目上 更新: 编译后的DLL位于“Net40”文件夹中,这是否意味着我无法在2.0项目中引用它 尝试了这段代码,我得到了一个TypeLoadException(VS2008,目标框架3.5) 使用系统; 使用System.Collections.Generic; 使用System.Linq; 使用System.Windows.Forms; 使用MathNet.Numerics.LinearAlgebra

我刚下载了Math.NET的最新版本,使用时遇到了一些麻烦

该库是否应该运行在.NET4.0项目上

更新:

编译后的DLL位于“Net40”文件夹中,这是否意味着我无法在2.0项目中引用它

尝试了这段代码,我得到了一个
TypeLoadException
(VS2008,目标框架3.5)

使用系统;
使用System.Collections.Generic;
使用System.Linq;
使用System.Windows.Forms;
使用MathNet.Numerics.LinearAlgebra.Double;
名称空间MathNetTest
{
静态类程序
{
/// 
///应用程序的主要入口点。
/// 
[状态线程]
静态void Main()
{
double[,]A=新的double[3,3];
A[0,0]=1;
A[0,1]=0.2;
A[0,2]=1;
A[1,0]=1.5;
A[1,1]=-1.2;
A[1,2]=1.1;
A[2,0]=0.45;
A[2,1]=2.1;
A[2,2]=-0.76;
矩阵XA=新的密度矩阵(A);
矩阵XB=新的密度矩阵(A);
矩阵C=(矩阵)(XA*XB);
}
}
}

根据文档:

它需要.NET 2.0

  • :.Net 4或更高版本,便携式版本:Silverlight 5或更高版本,Metro
  • (数字的前身):.Net 2或更高版本

更新2013-12-14:从v3开始,Math.NET Numerics再次支持.NET 3.5。

我想你的意思是:你得到的错误是什么?我相信我是在使用.NET 4.0 System.Numerics dll的特定方法时得到这个错误的,因为它是在2.0应用程序中运行的4.0 dll。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using MathNet.Numerics.LinearAlgebra.Double;

namespace MathNetTest
{
    static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {
            double[,] A = new double[3, 3];
            A[0, 0] = 1;
            A[0, 1] = 0.2;
            A[0, 2] = 1;
            A[1, 0] = 1.5;
            A[1, 1] = -1.2;
            A[1, 2] = 1.1;
            A[2, 0] = 0.45;
            A[2, 1] = 2.1;
            A[2, 2] = -0.76;

            Matrix XA = new DenseMatrix(A);
            Matrix XB = new DenseMatrix(A);

            Matrix C = (Matrix)(XA * XB);
        }
    }
}
Ensure the Microsoft .NET Framework SDK 2.0 or newer is installed.