前言:
开发环境:在本地机器上使用BIDS + MSSQL 2012的Visual Studio 2010
生产环境:用于Live Report Server的MSSQL 2008 R2
我在报表中引用System.Core时遇到部署报表的问题.错误如下.
加载代码模块时出错:'System.Core,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089'.详细信息:无法加载文件或程序集"System.Core程序,版本= 4.0.0.0,文化=中性公钥= b77a5c561934e089"或它的一个依赖.此程序集由比当前加载的运行时更新的运行时构建,无法加载.
我在我的报告中引用了System.Core,以便我可以使用TimeZoneInfo类.我已经看到有关在SSRS中使用此课程的其他问题,我无法在这些问题中的任何建议之后解决问题.
REF
Reporting Services 2012部署错误:"加载代码模块时出错"
我可以引用System.Core 4.0并在本地运行而没有任何问题; 但是,当我部署时,我收到上面的错误消息.为了进一步澄清......在部署过程中发生这种情况,而不是在部署并尝试在服务器上运行报告之后.
编辑
CodeModules的报告RDL xml如下所示:
<CodeModules>
<CodeModule>System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Run Code Online (Sandbox Code Playgroud)
这就像我所说的那样"嵌入"一样多.从它的外观来看它真的只是一个装配的参考.
非常感谢协助.
解决方案 由于您无法引用4.0,因此可以引用3.5以获取对TimeZoneInfo类的访问权限.
步骤1.为要使用的TimeZoneInfo逻辑创建包装类
步骤2.目标3.5
步骤3.构建发行版并将其复制到[DRIVE]:\ Program Files(x86)\ Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies目录,以便设计人员可以加载它
步骤4.将同一程序集部署到SQL Server @以下文件夹[DRIVE]:\ Program Files\Microsoft SQL Server\MSRS10.SQL2008\Reporting Services\ReportServer\bin \
现在您可以部署报告.所以我的错误如下
我没有参考3.5
我没有复制到我的visual studio实例的正确目录来获取程序集.我已将我的安装移动到另一个目录,但我没有把它放在新路径中.
更新 如果有人试图在SSRS 2012及更高版本中引用.NET 4.0并仍然出错,答案很简单.SSRS 2012和2014(?)仍然不支持.NET 4.0
这个似乎表明SSRS 2014也不支持它(我说不出话,MICROSOFT!) MS KB
这篇文章的上下文涉及ASP.NET Web API 2.2 + OWIN环境是一个同时具有OWIN服务器和Web Api的应用程序.
背景:
在启动类,必须指定OAuthBearerServerOptions其提供给OAuthBearerAuthenticationProvider.这些选项是在OWIN服务器启动期间创建的.在OAuthBearerServerOptions上,我必须指定AccessTokenExpireTimeSpan,以便我可以确保令牌过期.
问题
我必须能够基于每个身份验证请求动态指定过期时间跨度.我不确定这是否可以做到并且在想:
启动配置内容:
var config = new HttpConfiguration();
WebApiConfig.Register(config);
var container = builder.Build();
config.DependencyResolver = new AutofacWebApiDependencyResolver(container);
var OAuthServerOptions = new OAuthAuthorizationServerOptions()
{
AllowInsecureHttp = true,
TokenEndpointPath = new PathString("/OAuth"),
AccessTokenExpireTimeSpan = TimeSpan.FromMinutes(**THIS NEEDS TO BE DYNAMIC**)),
Provider = new AuthorizationServerProvider()
};
//STOP!!!!!!!!
//DO NOT CHANGE THE ORDER OF THE BELOW app.Use statements!!!!!
//Token Generation
app.UseCors(Microsoft.Owin.Cors.CorsOptions.AllowAll); //this MUST come …
Run Code Online (Sandbox Code Playgroud)