我已经通读了ASP.NET动态数据的教程,它们都要求您创建一个静态数据上下文。
也就是说,您必须使用Entity Framework或Linq to SQL生成数据模型,如果该模型的方案发生更改,则需要进入Visual Studio并相应地更改模型。
我正在寻找一个解决方案,将处理方案(即新表或新列)的变化,而不必在visual studio中重建。
使用ASP.NET动态数据可以做到这点吗?
发布于 2014-06-26 06:16:37
不完全是,您的选择是:实体框架或Linq to SQL。这两个类都会生成一系列具有getter和setter属性以及详细描述元数据的属性的类,当您将数据库表拖放到数据上下文中时,这是自动完成的。
我不认为有第三种选择,即使你可以编写它‘肯定不会是微不足道的,在改变数据库之后重做数据上下文将更容易,并且总体上花费更少的时间。
虽然我很欣赏数据库表和列的变化,但频繁的数据库变化一定会中断对最终用户的服务吗?
唯一的解决方法是以某种自动方式运行SqlMetal http://msdn.microsoft.com/en-us/library/bb386987(v=vs.110).aspx,例如,计划任务运行PowerShell脚本或批处理文件。然而,这将需要重新编译和重新部署,这也将中断最终用户,除非它是在没有人使用的情况下完成的。
此外,它只会给你提供非常基本的新建、查看和编辑屏幕--除了一个非常快速和肮脏的应用程序之外,你看不到它们对任何东西有什么用处。
不过,如果动态数据能做你所要求的事情,那就太酷了。
您可以从命令行使用SqlMetal.exe来生成类,我相信Visual Studio会在幕后执行此操作。
https://stackoverflow.com/questions/24145015
复制相似问题