Как запустить "do tnet myDll.dll" из основного проекта. net? - PullRequest
0 голосов
/ 24 апреля 2020

У меня есть основной проект. net на mac / linux, который я могу запустить из терминала, используя

         dotnet myDll.dll

. Я хочу запустить его из моего c# кода проекта - так Запустите веб-приложение, а затем запустите пользовательские тесты против него.

Я пытался

        var path = "path-to-my-dll/myDll.dll");

        var processStartInfo = new ProcessStartInfo(path, "")
        {
            WorkingDirectory = Path.GetDirectoryName(path)
        };

        var process = Process.Start(processStartInfo);

Однако это просто запускает терминальный эквивалент

        ./myDll.dll

Как мне вызвать команду do tnet?

Ответы [ 2 ]

0 голосов
/ 24 апреля 2020

Вы должны иметь возможность передать dotnet как fileName и myDll.dll в качестве аргумента запуска конструктору ProcessStartInfo , например:

var processStartInfo = new ProcessStartInfo("dotnet", "myDll.dll")
{
    WorkingDirectory = Path.GetDirectoryName(path),
};

var process = Process.Start(processStartInfo);
0 голосов
/ 24 апреля 2020

Благодаря huysentruitw и Выполните команду do tnet с Process в C#

var processStartInfo = new ProcessStartInfo(expected, "")
        {
            FileName = "dotnet",
            Arguments = "myDll.dll",
            WorkingDirectory = Path.GetDirectoryName(path)
        };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...