【问题标题】:The network path was not found C# and Oracle找不到网络路径 C# 和 Oracle
【发布时间】:2017-05-26 07:14:32
【问题描述】:

我已经为 mySQL 完成了这个应用程序,但现在我必须为 oracle 重新制作它。所以现在我遇到了这个

“/”应用程序中的服务器错误。

找不到网络路径

描述:执行过程中发生了未处理的异常 当前的网络请求。请查看堆栈跟踪以获取更多信息 有关错误的信息以及它在代码中的来源。

异常详细信息:System.ComponentModel.Win32Exception:网络 找不到路径

来源错误:

第 222 行://按部门结果。第 223 行:
GridDatasource1();第 224 行:GridView1.DataBind();线 225: //按部门结果结束。第 226 行:
//多个姓氏结果。

源文件:C:\Users\tomas.filip\Documents\Visual Studio 2015\Projects\WebApplication1\WebApplication1\Default.aspx.cs 行: 224

堆栈跟踪:

[Win32Exception (0x80004005): 找不到网络路径]

[SqlException (0x80131904): 网络相关或实例特定 建立与 SQL Server 的连接时出错。这 服务器未找到或无法访问。验证实例 名称正确且 SQL Server 配置为允许远程 连接。 (提供者:命名管道提供者,错误:40 - 无法 打开与 SQL Server 的连接)]
System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity 身份、SqlConnectionString 连接选项、SqlCredential 凭证、对象 providerInfo、字符串 newPassword、SecureString newSecurePassword、布尔重定向用户实例、SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, DbConnectionPool 池,字符串 accessToken,布尔值 applyTransientFaultHandling) +1418
System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions 选项,DbConnectionPoolKey poolKey,对象 poolGroupProviderInfo, DbConnectionPool 池,DbConnection owningConnection, DbConnectionOptions userOptions) +470
System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool 池,DbConnection owningObject,DbConnectionOptions 选项, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions) +70
System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal 旧连接)+945
System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal 旧连接)+114
System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean 允许创建、布尔型仅OneCheckConnection、DbConnectionOptions 用户选项、DbConnectionInternal 和连接)+1637
System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject,TaskCompletionSource1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection) +117
System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource
1 重试,DbConnectionOptions 用户选项、DbConnectionInternal oldConnection、DbConnectionInternal& 连接)+267
System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection 外部连接,DbConnectionFactory 连接工厂, 任务完成源1 retry, DbConnectionOptions userOptions) +318
System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource
1 重试)+132
System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 重试) +246 System.Data.SqlClient.SqlConnection.Open() +122
System.Data.Common.DbDataAdapter.FillInternal(数据集数据集, DataTable[] 数据表,Int32 startRecord,Int32 maxRecords,字符串 srcTable、IDbCommand 命令、CommandBehavior 行为)+177
System.Data.Common.DbDataAdapter.Fill(数据集数据集,Int32 startRecord,Int32 maxRecords,String srcTable,IDbCommand 命令, 命令行为行为)+182
System.Data.Common.DbDataAdapter.Fill(数据集数据集,字符串 srcTable) +123
System.Web.UI.WebControls.SqlDataSourceView.ExecuteSelect(DataSourceSelectArguments 论据)+2964
System.Web.UI.DataSourceView.Select(DataSourceSelectArguments 参数,DataSourceViewSelectCallback 回调)+26
WebApplication1._Default.Button1_Click(Object sender, EventArgs e) in C:\Users\tomas.filip\Documents\Visual Studio 2015\Projects\WebApplication1\WebApplication1\Default.aspx.cs:224
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +11828965
System.Web.UI.WebControls.Button.RaisePostBackEvent(字符串 eventArgument) +150 System.Web.UI.Page.ProcessRequestMain(布尔值 includeStagesBeforeAsyncPoint,布尔型 includeStagesAfterAsyncPoint) +1735

有一些与此相关的代码区域。

//By department result.
GridDatasource1();
GridView1.DataBind();
//End of by department result.

功能

protected void GridDatasource1()
        {
            SqlDataSource SqlDataSource2 = new SqlDataSource();
            SqlDataSource2.ID = "SqlDataSource2";
            this.Page.Controls.Add(SqlDataSource2);
            SqlDataSource2.ConnectionString = ConfigurationManager.ConnectionStrings["conString"].ConnectionString;
            SqlDataSource2.SelectCommand = "SELECT * FROM v_employees_intr where PLACE  like '" + DropDownList1.SelectedValue + "' ORDER BY '" + RadioButtonList1.SelectedValue + "' ASC;";
            GridView1.DataSource = SqlDataSource2;         
        }

还有conString

<add name="conString" connectionString="DATA SOURCE=epcepc091:1521/XE;PERSIST SECURITY INFO=True;USER ID=SYSTEM;Password=Epce12345" providerName="System.Data.OracleClient" />

我试图找到解决方案,但没有成功。我会很高兴为您提供任何帮助。谢谢。

【问题讨论】:

  • 这似乎是错误的:DATA SOURCE=epcepc091:1521/XE 你应该把端口号作为最后一部分 epcepc091/XE:1521
  • 好吧,不是这样的:/
  • 异常指向 SqlConnection 失败,但在将 ProviderName 设置为 Oracle 库时不应该出现这种情况。就像 ProviderName 是错误的。您可以尝试直接在代码中设置 ProviderName 属性,而不是通过 ConnectionString 隐式设置吗?
  • 嘿,谢谢!

标签: c# oracle visual-studio-2015


【解决方案1】:

感谢Seve,真的感谢你 我所要做的就是添加

SqlDataSource2.ProviderName = "System.Data.OracleClient";

不知道为什么它不能在 Web.config 中工作。谢谢史蒂夫。

【讨论】:

    猜你喜欢
    • 2017-04-16
    • 1970-01-01
    • 1970-01-01
    • 2014-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-18
    相关资源
    最近更新 更多