为啥.net网站访问出错 provider: TCP 提供程序, error: 0 -

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥.net网站访问出错 provider: TCP 提供程序, error: 0 -相关的知识,希望对你有一定的参考价值。

打开网页 错误提示如下 我个人不是很懂.net 请详细讲解下好吗 有用的话我就采纳

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

在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: TCP 提供程序, error: 0 - 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。)
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.SqlClient.SqlException: 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: TCP 提供程序, error: 0 - 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。)

源错误:

执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。

堆栈跟踪:

[SqlException (0x80131904): 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: TCP 提供程序, error: 0 - 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。)]
System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +4845255
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +194
System.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo, SqlInternalConnectionTds connHandler, Boolean ignoreSniOpenTimeout, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, SqlConnection owningObject) +4858557
System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64 timerExpire, SqlConnection owningObject) +90
System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, Int64 timerStart) +342
System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance) +221

开始>>运行.中输入regedit

搜索User Shell Folders
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders],卸载或安装程序时如果这个位置的参数设置不正确,就可能出现"无法访问网络位置"的提示.要找到准确的位置,得用注册表定位,就是将出现的提示信息用注册表搜索到,就是在[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]里面的,然后找到相应字符串,将其修改为正确的即可正常卸载或安装程序.
参考资料
1. 单击“开始”,单击“运行”,键入 Regedit.exe,然后单击“确定”。
2. 找到并单击下面的注册表子项:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurentVersion\Explorer\User
Shell Folders
3. 在右窗格中,验证其中的值是否与下表中的值相同。如果所有值都与下表匹配,则转
到步骤 7。
数值名称 类型 数值数据
AppData REG_EXPAND_SZ %USERPROFILE%\Application Data
Cache REG_EXPAND_SZ %USERPROFILE%\Local Settings\Temporary Internet Files
Cookies REG_EXPAND_SZ %USERPROFILE%\Cookies
Desktop REG_EXPAND_SZ %USERPROFILE%\桌面
Favorites REG_EXPAND_SZ %USERPROFILE%\Favorites
History REG_EXPAND_SZ %USERPROFILE%\Local Settings\History
LocalAppData REG_EXPAND_SZ %USERPROFILE%\Local Settings\Application Data
Local Settings REG_EXPAND_SZ %USERPROFILE%\Local Settings
My Pictures REG_EXPAND_SZ %USERPROFILE%\My Documents\My Pictures
NetHood REG_EXPAND_SZ %USERPROFILE%\NetHood
Personal REG_EXPAND_SZ %USERPROFILE%\My Documents
PrintHood REG_EXPAND_SZ %USERPROFILE%\PrintHood
Programs REG_EXPAND_SZ %USERPROFILE%\「开始」菜单\程序
Recent REG_EXPAND_SZ %USERPROFILE%\Recent
SendTo REG_EXPAND_SZ %USERPROFILE%\SendTo
Start Menu REG_EXPAND_SZ %USERPROFILE%\「开始」菜单
Startup REG_EXPAND_SZ %USERPROFILE%\「开始」菜单\程序\启动
Templates REG_EXPAND_SZ %USERPROFILE%\Templates
4. 如果有任何名称、类型或值与步骤 3 中的表不匹配,则右键单击该值名称,然后单
击“删除”。
5. 在左窗格中,右键单击“User Shell Folders”,指向“新建”,单击“可扩充字符
串值”,键入要按步骤 3 中的表输入的名称值,然后按 Enter 键。
6. 右键单击在步骤 5 中创建的值,单击“修改”,在“数值数据”框中键入该数值名
称的值,然后单击“确定”。
7. 找到并单击下面的注册表子项:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurentVersion\Explorer\User
Shell Folders
8. 在右窗格中,验证其中的值是否与下表中的值相同。如果所有值都与下表匹配,则转
到步骤 12。
数值名称 类型 数值数据
Common AppData REG_EXPAND_SZ %ALLUSERSPROFILE%\Application Data
Common Desktop REG_EXPAND_SZ %ALLUSERSPROFILE%\桌面
Common Documents REG_EXPAND_SZ %ALLUSERSPROFILE%\Documents
Common Favorites REG_EXPAND_SZ %ALLUSERSPROFILE%\Favorites
Common Programs REG_EXPAND_SZ %ALLUSERSPROFILE%\「开始」菜单\程序
Common Start Menu REG_EXPAND_SZ %ALLUSERSPROFILE%\「开始」菜单
Common Startup REG_EXPAND_SZ %ALLUSERSPROFILE%\「开始」菜单\程序\启动
Common templates REG_EXPAND_SZ %ALLUSERSPROFILE%\Templates
9. 如果有任何名称、类型或值与步骤 3 中的表不匹配,则右键单击该值名称,然后单
击“删除”。
10. 在左窗格中,右键单击“User Shell Folders”,指向“新建”,单击“可扩充字
符串值”,键入要按步骤 3 中的表输入的名称值,然后按 Enter 键。
11. 右键单击在步骤 5 中创建的值,单击“修改”,在“数值数据”框中键入该数值名
称的值,然后单击“确定”。
12. 退出注册表编辑器,然后重新启动计算机

最终发现在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurentVersion\Explorer\User
Shell Folders 项下面有很多0值的指向,删除后恢复正常

我已经详细的回答了你的解决方法.我依靠此方法解决了你同样的问题.主要是在步骤3中把所有的0全部删除掉!
参考技术A 1.可能是因为连接字符串有错。要在web.config里面去找<connection>节点
2.可能是因为SQL的服务没有开这个的话就要在控制面板里面找到管理工具然后点服务,找到sqlserver 相关服务,然后启动服务,不过我忘记哪个是主程序了,agent什么的可以不用打开
参考技术B 程序不能连上SQL服务器。。看一下webconfig中的连接字符串。。。本回答被提问者采纳 参考技术C 程序没连上SQL服务器,SQL Server 服务器是本地机吗?

为啥 MongoEngine/pymongo 在尝试仅第一次访问对象时会出错

【中文标题】为啥 MongoEngine/pymongo 在尝试仅第一次访问对象时会出错【英文标题】:Why MongoEngine/pymongo giving error when trying to access object first time only为什么 MongoEngine/pymongo 在尝试仅第一次访问对象时会出错 【发布时间】:2019-08-24 23:17:38 【问题描述】:

我已经定义了与 MongoDB 映射的 MongoEngine 类。当我尝试使用 MongoEngine 访问数据时,在特定代码中,它在第一次尝试时失败,但在第二次尝试中使用相同的代码成功返回数据。在python终端执行代码

from Project.Mongo import User
user = User.objects(username = 'xyz@xyz.com').first()

from Project.Mongo import Asset
Asset.objects(org = user.org)

第一次尝试时生成以下错误的代码的最后一行。

Traceback(最近一次调用最后一次): 文件“”,第 1 行,在 get 中的文件“/usr/local/lib/python3.5/dist-packages/mongoengine/queryset/manager.py”,第 37 行 查询集 = 查询集类(所有者,所有者。_get_collection()) _get_collection 中的文件“/usr/local/lib/python3.5/dist-packages/mongoengine/document.py”,第 209 行 cls.ensure_indexes() 文件“/usr/local/lib/python3.5/dist-packages/mongoengine/document.py”,第 765 行,在 ensure_indexes collection.create_index(字段,背景=背景,**选择) 文件“/usr/local/lib/python3.5/dist-packages/pymongo/collection.py”,第 1754 行,在 create_index self.__create_index(keys, kwargs, session, **cmd_options) 文件“/usr/local/lib/python3.5/dist-packages/pymongo/collection.py”,第 1656 行,在 __create_index 会话=会话) _command 中的文件“/usr/local/lib/python3.5/dist-packages/pymongo/collection.py”,第 245 行 retryable_write=retryable_write) 文件“/usr/local/lib/python3.5/dist-packages/pymongo/pool.py”,第 517 行,在命令中 整理=整理) 文件“/usr/local/lib/python3.5/dist-packages/pymongo/network.py”,第 125 行,在命令中 parse_write_concern_error=parse_write_concern_error) _check_command_response 中的文件“/usr/local/lib/python3.5/dist-packages/pymongo/helpers.py”,第 145 行 引发 OperationFailure(msg % errmsg,代码,响应) pymongo.errors.OperationFailure:索引: v:2,键: org:1,_fts:“text”,_ftsx:1,名称:“org_1_name_content_text_description_text_content_text_tag_content_text_remote.source_text”,ns:“digitile.asset”,权重:内容:3,描述:1,name_content:10,remote.owner__name:20,remote.source:2,tag_content:2,default_language:“english”,背景:false,language_override:“language”,textIndexVersion:3已经存在不同的选项: v: 2, key: org: 1, _fts: "text", _ftsx: 1 , name: "org_1_name_text_description_text_content_text_tag_content_text_remote.source_text", ns: "digitile.asset", default_language: "english",背景:假,权重:内容:3,描述:1,名称:10,remote.owner__name:20,remote.source:2,tag_content:2,language_override:“语言”,textIndexVersion:3

当我第二次尝试相同的最后一行时,它会产生准确的结果

我正在使用 python 3.5.2 pymongo 3.7.2 mongoengine 0.10.6

【问题讨论】:

【参考方案1】:

当您第一次在文档类上调用 .objects 时,mongoengine 会尝试创建不存在的索引。

在这种情况下,它在 asset 集合上创建索引时失败(索引的详细信息来自您的 Asset/User 文档类),正如您在错误消息中看到的那样: pymongo.errors.OperationFailure: Index: ...new index details... already exists with different options ...existing index details....

第二次调用时,mongoengine 假定索引已创建并且不再尝试创建它,这就解释了第二次调用通过的原因。

【讨论】:

以上是关于为啥.net网站访问出错 provider: TCP 提供程序, error: 0 -的主要内容,如果未能解决你的问题,请参考以下文章

.net网站搭建好以后 服务器上可以正常访问 但是通过域名外网访问就出错

为啥会出错啊!???????

.NET Oracle Provider:为啥我的存储过程不起作用?

vs2012发布asp.net mvc4的网站到iis上,发布后在访问数据库的地方出错?

网站为啥会出现404错误,如何解决

Roslyn导致发布网站时报错:编译失败