我已经阅读了一些关于ADO.NET实体框架的内容,但有一些我不知道的事情。现在(不使用EF,不确定调用这种技术,只是ADO.NET?)我们将所有程序存储在数据库中,如果我们必须更改任何东西,只需进入数据库并更改查询,很容易(除了我有100多个查询的事实)。
如果我对EF是正确的,我可以更容易查询(没有连接,更短的查询),但所有内容都保存在实体数据模型中。因此,如果我需要更改查询,我将不得不启动VS进入,找到位置并更改查询(我猜这将是linq-to-sql或实体SQL来执行查询)
我只需要对EF和Entity SQL与Linq-to-SQL进行一些澄清。
谢谢!
答案 0 :(得分:1)
使用EF时,您可以使用多种类型的数据访问:
ObjectContext
上公开的sotred过程。 EF将处理参数和结果映射。ExecuteStoreQuery
或ExecuteStoreCommand
执行直接SQL(仅限EFv4)。在这里,您可以调用任何SQL,包括存储过程。因此,使用EF,您既可以使用当前的方法,也可以使用EF本身。此外,通过EF调用本机SQL具有一些优点,如自动映射到准备好的类。
无论如何,你所描述的是非常罕见的情况。在许多公司中,修改DB中的某些内容需要修改应用程序的相同过程(甚至更复杂),因此您不能简单地在生产中修改存储过程。