渲染控件会在.Net 4中生成安全性exception

我遇到的问题是在.NET 2.0中运行良好但在.Net 4下出现此错误的代码。

构建(Web):覆盖成员时违反了inheritance安全规则:’Controls.RelatedPosts.RenderControl(System.Web.UI.HtmlTextWriter)’。 覆盖方法的安全性可访问性必须与被覆盖的方法的安全性可访问性相匹配。

这是在DotNetBlogEngine中。 .NET 4.0似乎不喜欢代码中的其他一些安全需求。 我按照我在博客(和这里)找到的一些建议,并摆脱了所有其他错误。 但这个仍然让我望而却步。

主BlogEngine核心dll不再针对安全性需求而设置,也是针对.NET 4.0编译的。

此错误在网站端尝试使用dll 。 有些控件使用HtmlTextWriter调用RenderControl方法。 显然,文本编写器现在设置了一些软安全属性。

每个控件都实现了一个自定义接口( public interface ICustomFilter ),没有安全权限或要求。 该站点在我的本地开发机器上运行完全信任。

更新:

我已经尝试了.NET 4中安全命名空间下的各种设置。 我知道这是一个代码访问安全性更改,但我不明白它背后的原因(或错误消息)。

设置此属性[assembly:SecurityRules(SecurityRuleSet.Level1)]

参考: http : //msdn.microsoft.com/en-us/library/dd233102%28VS.100%29.aspx

在.net 4.0下运行我唯一需要做的就是在Core项目中添加对System.Web.ApplicationServices的引用。