首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Stimulsoft,程序集“Stimulsoft.Data”未找到

Stimulsoft,程序集“Stimulsoft.Data”未找到
EN

Stack Overflow用户
提问于 2021-01-29 13:18:11
回答 3查看 868关注 0票数 0

我已经升级了刺激软件报告版本,从2014.3.0.0到2021.1.1 (安装了Nuget软件包管理器的Stimulsoft.Reports.Web 2021.1.1 ),并添加了生成pdf报告的代码。它在本地实例上运行得很好,但在部署到活动时却抛出了程序集错误。

错误如下:

代码语言:javascript
复制
System.IO.FileNotFoundException: Could not load file or assembly 'Stimulsoft.Data, Version=2021.1.1.0, Culture=neutral, PublicKeyToken=ebe6666cba19647a' or one of its dependencies. The system cannot find the file specified.
File name: 'Stimulsoft.Data, Version=2021.1.1.0, Culture=neutral, PublicKeyToken=ebe6666cba19647a'
   at Stimulsoft.Report.StiNameValidator.CorrectName(String str, Boolean checkKeywords, StiReport report, Boolean isDataExpression)
   at Stimulsoft.Report.StiReport.GetReportName()
   at Stimulsoft.Report.StiReport.ScriptNew()
   at Stimulsoft.Report.StiReport.Clear(Boolean generateNewScript)
   at Stimulsoft.Report.StiReport.LoadPackedReport(Stream stream)
   at Stimulsoft.Report.StiReport.LoadPackedReport(Byte[] bytes)

有谁能建议一下吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2021-02-16 09:14:36

这是部署问题。MsBuild在构建应用程序时不包括间接引用。所以,我刚刚更新了Manifest文件,它解决了问题。

票数 0
EN

Stack Overflow用户

发布于 2021-02-09 22:44:26

我相信你错过了更新的程序集重定向。请参阅:https://learn.microsoft.com/en-us/dotnet/framework/configure-apps/redirect-assembly-versions

这就是我在web.config中要做的:

代码语言:javascript
复制
<configuration>
<runtime>
 <assemblyBinding ...>
<dependentAssembly>
  <assemblyIdentity name="Stimulsoft.Data"
    publicKeyToken="ebe6666cba19647a" />
  <bindingRedirect oldVersion="2014.3.0.0" newVersion="2021.1.1.0" />
</dependentAssembly>
 </assemblyBinding >
</runtime>
</configuration>
票数 1
EN

Stack Overflow用户

发布于 2021-02-10 01:14:07

这可能是一个构建和部署问题,解决方案取决于构建和部署应用程序的方式。这就是我要做的:

  1. 检查旧的dll 2014.3.0.0是否位于生产服务器的bin文件夹上。如果是这样,那么您可能还没有更新项目中的所有引用。
  2. 旧的或新的dll都不在bin文件夹中。这可能是由于构建服务器上缺少nuget还原步骤而发生的。
  3. 新的dll 2021.1.1位于bin文件夹中。这意味着(它的依赖项之一)在bin文件夹中丢失了。要找出缺少哪个依赖项,您需要解压缩Stimulsoft.Reports.Web 2021.1.1 dll,并检查该dll中列出的所有引用都位于bin文件夹中。如果没有,则需要将对缺失dll的引用手动添加到项目中。

注意:我使用ILSpy进行反编译。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65955233

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档