NuGet-仅将后期处理的文件添加到web项目

NuGet-仅将后期处理的文件添加到web项目,nuget,Nuget,我有一个nuget包,可以应用于任何类型的C#项目 它有一个作为包的一部分添加到项目中的文件。NuSpec如下所示: <files> <file src="Content\App_Start\StartUpCode.cs.pp" target="content\App_Start" /> 我正在使用WebActivator在应用程序启动时运行文件中的代码 当nuget包应用于同一解决方案中的多个项目时,我遇到了一个问题。我添加了几个StartUpCode

我有一个nuget包,可以应用于任何类型的C#项目

它有一个作为包的一部分添加到项目中的文件。NuSpec如下所示:

  <files>
    <file src="Content\App_Start\StartUpCode.cs.pp" target="content\App_Start" />

我正在使用WebActivator在应用程序启动时运行文件中的代码

当nuget包应用于同一解决方案中的多个项目时,我遇到了一个问题。我添加了几个StartUpCode.cs实例,结果WebActivator多次运行代码


如何阻止将此代码添加到与web无关的项目中?也就是说,将它添加到WebAPI项目或WebForms项目中很酷,但不添加到类库中。

我认为Nuget规范中没有任何东西可以让您轻松做到这一点。可能使用并检测安装到的项目类型和/或以前是否引用过程序集

就我个人而言,我会把它分成两个Nuget包。一个是业务逻辑,另一个是WebActivator依赖项