我在 Azure App Service(Linux OS) 中托管了我的 .Net Core(3.1) WebAPI 应用程序,这个 API 应用程序正在与本地SQL 数据库进行通信(使用 Windows 2012 Server OS)。为了在公共(Azure)到私有(本地)网络之间建立通信,我使用了 Azure 混合连接器。
注意:端口号 80 和 443 未在托管 SQL Server 的我的虚拟机(托管在本地)中运行。
我的端点返回 504 Gateway Timeout 异常。
public SampleResponse GetCountryCodes()
{
var ccList = new List<Employee>();
public static string sqlDataSource = "Data Source=servername,1433;Initial Catalog=databaseName;User ID=UserName;Password=Password;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30";
try
{
SqlDataReader myReader;
using (SqlConnection myCon = new SqlConnection(sqlDataSource))
{
myCon.Open();
using (SqlCommand myCommand = new SqlCommand("select * from [dbo].[Employee]", myCon))
{
myReader = myCommand.ExecuteReader();
while (myReader.Read())
{
var cc = new EmployeeData();
cc.EmployeeName = myReader["EmployeeName"].ToString();
cc.EmpID = myReader["EmpID"].ToString();
ccList.Add(cc);
}
}
}
}
catch (Exception ex)
{
// throw exception
}
return ccList;
}
我在托管 WebAPI 应用程序的同一个 AppService 中创建了混合连接,并在托管 SQL 数据库的本地服务器中下载了混合连接管理器,混合连接管理器的状态显示为已连接。
但我得到的输出是 504 Gateway Timeout exception
我的 API 邮递员输出:
<html>
<head>
<title>504 Gateway Time-out</title>
</head>
<body>
<center>
<h1>504 Gateway Time-out</h1>
</center>
<hr>
<center>nginx</center>
</body>
</html>
谁能知道为什么输出没有得到