Мне нужно использовать Nuget Femyou, который доступен только для NetStandard 2.1. (изменить) Я также установил nuget NativeLibraryLoader. Первоначально я выбрал целевую платформу .NET Standard 2.1, но позже после некоторой помощи перешел на .NET CORE 3.1.
Мой код:
Код: Выделить всё
using System;
using System.Collections.Generic;
using System.Text;
namespace TesteFMU_set2024
{
public class Program
{
public static void Main(string[] args)
{
TestFMU test = new TestFMU();
test.Calculation();
Console.Write("Calculation concluded.");
}
}
using System;
using Femyou;
using System.IO;
namespace TestFMU
{
public class TestFMU
{
public void Calculation()
{
string fmuFolder = File.ReadAllText(@"C:\FMUTests\");
using var model = Model.Load(Path.Combine(fmuFolder, "TestFemyou.fmu"));
using var instance = Tools.CreateInstance(model, "test");
var x = model.Variables["x"];
var y = model.Variables["y"];
var z = model.Variables["z"];
Console.WriteLine("x = " + Convert.ToString(x));
}
}
}
Необработанное исключение тип 'System.IO.FileNotFoundException'
произошёл в NativeLibraryLoader.dll. Не удалось найти или загрузить собственную
библиотеку:
C:\User\AppData\Local\Temp\Femyou\TestFemyou.fmu \binaries\win64\TestFemyou.dll
> * Необработанное исключение: System.IO.FileNotFoundException: не удалось загрузить файл или сборку «netstandard». , Version=2.1.0.0, Culture=neutral,
> PublicKeyToken=cc7b13ffcd2ddd51' или одна из его зависимостей. Система
> не может найти указанный файл.*
И эта ошибка на выходе:
Целевой процесс завершился без вызова CoreCLR началось событие. Убедитесь, что целевой процесс настроен на использование .NET Core. Этого можно было ожидать, если целевой процесс не запускался в .NET Core. Программа «[14520] TesteFMU_set2024.dll» завершилась с кодом -532462766 (0xe0434352).
Я проверил установщик Visual Studio, но Я не могу понять, чего может не хватать в .NET Core, соответствующем NetStandard 2.1. Вот что у меня не установлено:
- .NET 5.0 Runtime (поддержка прекращена)
- .NET Среда выполнения Core 2.1 (поддержка прекращена)
- Среда выполнения .NET Core 2.2 (поддержка прекращена)
- Среда выполнения .NET Core 3.0 (поддержка прекращена)
- Среда выполнения .NET Core 3.1 (поддержка прекращена)
- Инструменты разработки .NET Framework 3.5
- . NET Framework 4.6.1 SDK
- .NET Framework 4.6.2 SDK
- Пакет таргетинга .NET Framework 4.6.2
- .NET Framework 4.7 SDK
- Нацеленный пакет .NET Framework 4.7
- .NET Framework 4.7.1 SDK
- Пакет таргетинга .NET Framework 4.7.1
- SDK .NET Framework 4.7.2
- Пакет таргетинга .NET Framework 4.8
- Пакет таргетинга .NET Framework 4.8
- li>
.NET Native - .NET Portable Library. Пакет таргетинга
- .NET SKD (поддержка прекращена)
- .NET Native
- .NET Portable Library. li>
Инструменты разработки плюс .NET Core 2.1 (поддержка прекращена) - Инструменты веб-разработки плюс .NET Core 2.1 (поддержка прекращена)
Заранее спасибо!
Подробнее здесь: https://stackoverflow.com/questions/790 ... not-find-o