Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 无法将连接字符串传递给OleDbConnection_C#_.net_Oledb - Fatal编程技术网

C# 无法将连接字符串传递给OleDbConnection

C# 无法将连接字符串传递给OleDbConnection,c#,.net,oledb,C#,.net,Oledb,更新:错误是由名为OleDbConnection的类隐藏OleDbConnection构造函数导致的,因此未显示重载方法 我正处于学习如何使用ole数据库连接的早期阶段,但是我马上遇到了一个问题。尽管有一个重载方法来创建OleDbConnection连接,但它不允许我传入连接字符串 这就是我要尝试的 private OleDbConnection _myConnection = null; public bool CreateConnection() { try {

更新:错误是由名为OleDbConnection的类隐藏OleDbConnection构造函数导致的,因此未显示重载方法

我正处于学习如何使用ole数据库连接的早期阶段,但是我马上遇到了一个问题。尽管有一个重载方法来创建OleDbConnection连接,但它不允许我传入连接字符串

这就是我要尝试的

private OleDbConnection _myConnection = null;

public bool CreateConnection()
{
    try
    {
        _myConnection = new OleDbConnection(ConfigurationManager.ConnectionStrings["OracleDefault"].ConnectionString);
    }
    catch (Exception e)
    {
        throw new Exception(e.Message);
    }

    return true;
}
现在看来这并没有什么问题,但是我得到一个错误,说这个方法有0个参数,但是用1个参数调用。我已经看到无数的例子表明它是这样做的,但出于某种原因,它只是不让我这样做。有什么想法吗

更新:删除了分号,因为它不应该出现在我发布的示例中,但这不是问题所在。它根本不接受任何形式的字符串。

只需删除;在[“OracleDefault”]之后。连接字符串。

使用

_myConnection = new OleDbConnection(ConfigurationManager.ConnectionStrings.["OracleDefault"].ConnectionString);
而不是

_myConnection = new OleDbConnection(ConfigurationManager.ConnectionStrings.["OracleDefault"].ConnectionString;);

由于构造函数包含一个重载,需要字符串

更新:错误是由一个名为OleDbConnection的类引起的,该类隐藏了OleDbConnection构造函数,因此没有呈现重载方法。

奇怪,这对我来说很有效。请看一看。“抛出新异常(e.Message);”是一种非常糟糕的做法,因为您将丢失堆栈跟踪(以及其他内容)。感谢您的评论和链接。抛出新异常不会停留在那里,它只是一个快速的类型,可以粘贴到这里;不应该在那里。这只是我在这里输入的示例中的一个错误。即使删除此项,它仍然不接受任何参数;不应该在那里。这只是我在这里输入的示例中的一个错误。即使删除此选项,它仍然不接受任何参数