我已经开始使用 Rider 在 Linux 中使用 C# 进行开发。我创建了我的测试,例如:
namespace RAWConverter
{
using NUnit.Framework;
[TestFixture]
public class SerializationHelperTest
{
[Test]
public void SerializeEntry()
{
msRun msRun = new msRun();
SerializationHelper.SerializationEntry(System.IO.Path.GetTempFileName(), msRun);
}
[Test]
public void DeserializationEntry()
{
msRun msRun = SerializationHelper.DeserializationEntry(getFileNameFromResource(RAWConverter.Properties.));
Console.WriteLine(msRun.endTime);
}
private string getFileNameFromResource(String fileName)
{
String strAppPath = Path.GetDirectoryName(System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName);
String strFilePath = Path.Combine(strAppPath, "resources");
return Path.Combine(strFilePath, fileName);
}
}
}
我的项目中有一个名为 resources 的文件夹,其中包含该文件。但是,当我执行测试时它失败了,因为这个变量
System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName
在/usr/bin
有任何想法吗?