4

简单的控制台应用程序打开连接没有任何问题:

    static void Main(string[] args)
    {
        string connectionString = String.Format(
           @"Provider=OraOLEDB.Oracle;PLSQLRSet=1;Password={0};Persist Security Info=True;User ID={1};Data Source={2};OLEDB.NET=true;FetchSize=5000",
            "pwd", "schema", "server");

        using (IDbConnection con = new OleDbConnection(connectionString))
        {
            con.Open();
            Console.WriteLine("Opened");
        }
        Console.ReadKey();
    }

但如果尝试在 nunit 测试方法中做同样的事情:

public class UnitTest1
{
    [Test]
    public void TestMethod1()
    {
        string connectionString = String.Format(
           @"Provider=OraOLEDB.Oracle;PLSQLRSet=1;Password={0};Persist Security Info=True;User ID={1};Data Source={2};OLEDB.NET=true;FetchSize=5000",
            "pwd", "schema", "server");

        using (IDbConnection con = new OleDbConnection(connectionString))
        {
            con.Open();
        }
    }
}

我有异常:ORA-12154:TNS:无法解析指定的连接标识符

显然是环境中的问题。

如何“配置” nunit 以使用“相同”设置作为控制台应用程序

一些细节:

目标框架:4.0 目标平台:x86 nunit 2.5.9 操作系统:Windows 7 x64

4

2 回答 2

1

问题导致文件夹名称中的括号。(C:\Program 文件 (x86))

如果我从文件夹 c:\something(nunit)\ 运行 nunit,我会遇到同样的错误。

将 VS 路径替换为 8.3 短名称对我没有帮助。所以必须安装Oracle Client 11,问题就消失了。

于 2012-08-06T05:48:56.053 回答
0

检查以下是否有帮助: http: //ora-12154.ora-code.com/

于 2011-05-11T13:56:59.460 回答