Я пытаюсь выполнить скрипт python из моего .Net веб-приложения.Для этого я установил Python из диспетчера пакетов nuget.
Ниже приведен сценарий Python для вставки записи в базу данных SQL Server,
import pyodbc
conn = pyodbc.connect('DRIVER={SQL Server Native Client 11.0};SERVER=*****\SQLEXPRESS;DATABASE=TestDB;UID=sa;PWD=****')
cur = conn.cursor()
cur.execute("Insert into Results([EmailID],[Journey]) VALUES (?,?)", 55, "JourneyName")
conn.commit()
Print("Success")
Ниже приведен код C # для выполнения над файлом Python..
public string run_cmd(string strPath) //this must not be async
{
try
{
ProcessStartInfo start = new ProcessStartInfo();
start.FileName = @"C:\Anaconda\python.exe";
start.Arguments = string.Format("C:\\Users\\261866\\TestPYCode.py");
start.UseShellExecute = false;
start.CreateNoWindow = true;
start.RedirectStandardOutput = true;
start.RedirectStandardError = true;
using (Process process = Process.Start(start))
{
using (StreamReader reader = process.StandardOutput)
{
string stderr = process.StandardError.ReadToEnd();
string result = reader.ReadToEnd();
return result;
}
}
}
catch (Exception ex)
{
return ex.Message;
}
return "run till end";
}
Я получаю ошибку ниже при выполнении кода выше,
Traceback (most recent call last):
File "C:\Users\261866\TestPYCode.py", line 1, in <module>
import pyodbc
ModuleNotFoundError: No module named 'pyodbc'
Я пробовал то же самое с Iron Python, но все еще получаю ту же ошибку.
Примечание: Тот же код Python выполняется в записной книжке Jupiter, но не из Visual Studio,
pip pyodbc libs уже установлены, драйверы ODBC для SQL установлены
На самом деле возникает такая же ошибка, если я пишу какую-либо "import* "утверждение в скрипте Python.