System.Web.PreApplicationStartMethodAttribute and ILMerge
本文关键字:ILMerge and PreApplicationStartMethodAttribute Web System | 更新日期: 2023-09-27 18:33:09
假设我需要部署单个程序集(要求)。我将使用 ILMerge 合并所有程序集。但是我的很多程序集都有PreApplicationStartMethodAttribute(我对所有这些程序集都没有任何控制权)。ILMerge 将创建单个程序集,并且 PreApplicationStartMethodAttribute 只允许在一个程序集中使用一次。我该怎么办?
(来自评论)
在 .NET 4.0 中,每个程序集只能指定一次PreApplicationStartMethod
:
预应用程序启动方法属性类
[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple = false)] public sealed class PreApplicationStartMethodAttribute : Attribute
但在 .NET 4.5 中,单个程序集中的多个属性是可以的:
预应用程序启动方法属性类
[AttributeUsageAttribute(AttributeTargets.Assembly, AllowMultiple = true)] public sealed class PreApplicationStartMethodAttribute : Attribute
因此,您可以通过升级到 .NET 4.5 来避免此问题。