我正在尝试找到一种从数据库中的查找表动态生成枚举类的方法,并且仍然具有普通类(即智能感知)的便利性。
我花了几个小时试图找出如何让自定义BuildProvider在ASP.NET Web应用程序中工作。该代码在网站中完美运行。然后我在MSDN上发现了一篇文章
将自定义的BuildProvider类添加到Web.config文件在ASP.NET网站中有效,但在ASP.NET Web应用程序项目中不起作用。在Web应用程序项目中,BuildProvider类生成的代码不能包含在应用程序中。有关更多信息,请参阅编译Web应用程序项目。
是否有人知道是否可以动态生成代码并且仍然能够在设计时“使用”它?使用网站不是一种选择。我需要使用一个网络项目。
谢谢!
答案 0 :(得分:1)
动态查找表的枚举类有什么意义?无论如何,你的代码引用总是静态的......
如果查找表的初始填充是静态的,请为其创建枚举,不要引用代码中的任何其他值
答案 1 :(得分:0)
如果MSDN说你不能这样做,我会采取另一种方法。也许写一个小的Console应用程序来编写你的Enums.cs文件并通过“Pre-build event命令行”运行它。然后,每次构建Web应用程序时,都会重新创建Enums类,并且应该可以通过Intellisense访问它。
我自己没有这样做。希望它有所帮助。