WCF和存储过程选项

时间:2010-08-05 15:58:09

标签: asp.net tsql stored-procedures wcf

我正在制作我的第一个WCF服务,我不确定哪个路由应该用存储过程和Linq到Sql。我知道我可以将存储过程拖放到我的DBML文件中并以这种方式调用它们,或直接调用它们,而不是使用dbml。我有理由选择一个而不是另一个吗?我想我有点困惑......非常感谢任何输入!

2 个答案:

答案 0 :(得分:2)

那么,您是否已经拥有在WCF服务中使用的Linq-to-SQL数据模型?如果是这样,我可能会将我的存储过程放入该数据模型中。

如果您还没有并使用Linq-to-SQL数据模型,那么在创建一个只是为了能够调用存储过程时,我并没有太多的用处和意义。

如果您还没有Linq-to-SQL数据模型,我可能只是使用直接的ADO.NET代码来调用该存储过程,发送来自WCF服务方法的任何参数,并传递返回您需要发回的任何数据。在这种情况下,您使用SqlConnectionSqlCommandCommandType设置为StoredProcedure),一堆SqlParameters,然后调用{ {1}}或command.ExecuteNonQuery()方法(取决于您的存储过程正在执行的操作)。

答案 1 :(得分:1)

如果遇到可能需要动态操作存储过程的参数的情况,您可能需要创建一个通过WCF服务调用存储过程的类。检查这篇文章是如何完成的。 Executing SPs from WCF Service