最近在做C#执行Sql脚本的 程序 ,环境VS2012Sql Server 2008。本地运行没有错误,但是发布到服务器上就报如下错误 “/”应用 程序 中的服务器错误。 未能 加载 文件 或 程序 集“Microsoft.SqlServer.SqlEnum, Version=11.0.0.0, Culture=neutral, PublicKey
最近在做c#执行sql脚本的程序,环境vs2012+sql server 2008。本地运行没有错误,但是发布到服务器上就报如下错误
方科网络ERP图文店II版为仿代码站独立研发的网络版ERP销售程序。本本版本为方科网络ERP图文店版的简化版,去除了部分不同用的功能,使得系统更加精炼实用。考虑到图文店的特殊情况,本系统并未制作出入库功能,而是将销售作为重头,使用本系统,可以有效解决大型图文店员工多,换班数量多,订单混杂不清的情况。下单、取件、结算分别记录操作人员,真正做到订单全程跟踪!无限用户级别,不同的用户级别可以设置不同的价
0
“/”应用程序中的服务器错误。
要关闭此功能,请移除注册表值 [HKLM\Software\Microsoft\Fusion!EnableLog]。
看到以上报错信息顿时很慌张,首先我对系统文件不熟悉,对错误信息中提到的注册表也知之甚少,google搜索解决方案又没有类似的,项目验收在即,顿时如热锅上的蚂蚁。
但是不解决肯定是不行的,于是静下心来,慢慢想解决方案,思路也就有了。
首先,本程序我引用了三个dll文件,分别为:Microsoft.SqlServer.ConnectionInfo.dll 、Microsoft.SqlServer.Management.Sdk.Sfc.dll 、Microsoft.SqlServer.Smo.dll
这三个文件均是安装sql server时自带的公用类库,可以实现执行sql脚本(如创建、删除表及数据库等),由于我对这三个类库研究的不深,因此其他功能暂时不考虑。
言归正传,知道问题出现在哪几个类库上,我们再来看具体报错信息,“未能加载文件或程序集“Microsoft.SqlServer.SqlEnum, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91”或它的某一个依赖项。系统找不到指定的文件。” 我在发布的服务器上看到有以上三个库文件(C:\Windows\assembly下)但是版本为Version=10.0.0.0 而本地环境中引用的类库版本为Version=11.0.0.0,导致服务器上不认识类库。把本地引用的类库版本换成10,重新生成后发布到服务器上,一切正常,问题解决。
以上就是解决思路及方案,以后碰到类似的问题,小伙伴们再也不用发愁了。现在把解决方案归纳一下:
1查找环境中是否有相应的类库
2查看版本是否正确(找到对应的类库,右键----属性-----详细信息---版权)
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号