我正在设置一个小的监视脚本,该脚本将检查OracleDB是否可访问。 我们计划使用Taskscheduler对该数据库进行每日几次导出,有时会出现错误(只是Timeout,在那里没有进一步的日志记录)。我想自己做一些研究,因此我决定定期检查是否存在连接,然后将其与本部门其他团队的错误进行比较。
我尝试了此链接Oracle How to中引用的一些代码。我还按照说明安装了VS2017 Developer Tools for Oracle。
我将代码更改为数据库,并且发生以下错误:
System.TypeInitializationException: 'The type initializer for 'OracleInternal.Common.ProviderConfig' threw an exception.'
这是我的代码:
string conString = "Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(Host=xxx)(Port=xxx)))(CONNECT_DATA=(SERVICE_NAME=xxx)));User Id=xx;Password=xx;";
OracleConnection con = new OracleConnection();
con.ConnectionString = conString;
con.Open();
OracleCommand cmd = con.CreateCommand();
cmd.CommandText = "select first_name from employees where department_id = 60"; // some query
OracleDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
Console.WriteLine("Employee Name: " + reader.GetString(0)); // some output
}
Console.ReadLine();
InnerException:
FileNotFoundException: Could not load file or assembly 'System.Configuration.ConfigurationManager, Version=0.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51'. Das System kann die angegebene Datei nicht finden.