为什么BuildProvider只能用于ASP.NET网站项目?

时间:2009-01-13 15:34:50

标签: subsonic buildprovider

我打算尝试Subsonic,您可以在ASP.NET网站项目中使用buildProvider元素生成DAL。但我很好奇为什么Web应用程序或Windows应用程序不支持BuildProvider

PS:我知道对于Subsonic,除了BuildProvider之外还有另外一个选项可以使用它,但我只是好奇。

2 个答案:

答案 0 :(得分:1)

由于Web应用程序项目与网站项目中编译的方式不同,因此无法正常工作。根据我在MSDN上阅读的内容,它与Web应用程序项目中的所有代码文件在部署之前使用MSBuild编译成单个程序集这一事实有关,但构建提供程序用于生成在运行时编译的代码(来自你的App_Code文件夹)。

在网站项目中,所有代码都是在运行时编译的,因此它们可以很好地协同工作。

答案 1 :(得分:1)

您可以将其挂钩到预构建事件中,并使用正确的命令行调用sonic.exe。