Я написал консольное приложение C #, которое подключается к общему ресурсу Azure с помощью команды net, а затем выполняет некоторые задачи над файлами.Ниже приведен код, который будет подключаться к общей папке с помощью процесса. Он работает нормально при запуске из локальной системы в качестве консольного приложения.
string netUseCommand = applicationDbContext.AccountConfigurations.FirstOrDefault().NetUseCommand;//Get net use command from database
// Use ProcessStartInfo class
ProcessStartInfo startInfo = new ProcessStartInfo
{
CreateNoWindow = false,
UseShellExecute = false,
Verb = "runas",
FileName = "cmd.exe",
WindowStyle = ProcessWindowStyle.Hidden,
Arguments = @"/c " + netUseCommand + " & " + " Z: && " + "//command to perform file operations"
};
try
{
// Start the process with the info we specified.
// Call WaitForExit and then the using statement will close.
using (Process exeProcess = Process.Start(startInfo))
{
exeProcess.WaitForExit();
}
}
catch (Exception ex)
{
// Log error.
Console.Out.WriteLine("Error Occurred: Error:" + ex.Message);
throw ex;
}
Когда я развернул это консольное приложение в качестве веб-задания в Azure, оно начало давать сбойво время выполнения команды netuse с приведенной ниже ошибкой
[10/23/2018 04:12:45 > 7b7826: ERR ] Access is denied.
я обнаружил, что Azure Powershell не поддерживается в веб-задании.Это та же проблема с процессом (cmd.exe).Пожалуйста, предоставьте решение или любые другие альтернативные решения.
Спасибо.