实体框架,如何以及在何处调用存储过程?

时间:2016-06-03 02:32:05

标签: entity-framework stored-procedures asp.net-web-api

我正在使用Entity Framework来创建Web API。

我有一个存储过程接收一些参数,然后在两个不同的表中创建一个新记录。

由于每个表都有自己的控制器,我应该在哪里调用存储过程?我应该怎么称呼它?

1 个答案:

答案 0 :(得分:0)

这听起来好像您正在采用REST风格的Web API。每个表都有自己的HTTP端点,您可以使用GET / PUT / POST / DELETE或多或少地直接操作记录。但是,您的新操作是一项更复杂的操作。它可能被视为更像RPC样式的调用。您可能希望为RPC样式的端点(路由)创建一个新的控制器,供客户端调用。最后,这取决于你的创造力。

根据我的经验,即使最严格遵守REST风格的约定,通常也需要至少一些RPC端点来执行更复杂的操作。有时候我会将它们包含在其他控制器中,有时它们会独立存在。