.net - Linq2Sql 与存储过程

标签 .net sql linq-to-sql

抱歉,如果这是一个重复的问题,但与执行存储过程相比,在 Linq2Sql 中执行 SQL 语句之间有真正的区别吗?

有什么好处? (如果有的话)

最佳答案

如果您将代码放入存储过程中,则您已将其与 C# 应用程序分离。您可以修复任何错误或扩展其功能,而无需重新编译和重新分发您的应用程序。

此外,使用存储过程可以是一种安全措施:您可以授予用户对存储过程的执行权限,但不能对基础表进行更新或插入权限。这可以使您的数据库更安全,更易于管理。

纯粹从功能的角度来看,我会说(几乎)您可以在存储过程中执行的任何操作也可以通过从您的 Linq-to-SQL DataContext 执行内联 SQL 来完成 - 但正如我之前提到的 - 在这种情况下,您有主应用程序中的所有 SQL 代码 - 这可能是好事还是坏事,这取决于您的应用程序和客户的工作方式和功能。

关于.net - Linq2Sql 与存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2355880/

相关文章:

c# - 如果实现在同一个程序集中,为什么部分方法不能公开?

基于聚合函数的SQL返回

sql - 我应该使用 CASCADE DELETE 规则吗?

c# - 使用 LINQ 计算列表中项目的出现次数

javascript - 对于企业应用程序,输入验证应该是客户端还是服务器端?

c# - 将 DatagridView 与 Linq to SQL 一起使用的最简单方法

c# - 读取/写入文件的最大并行度是多少?

sql - 我可以使用哪种模式来容纳基于手动日期的数据条目?

c# - 在 Linq 中删除查询

C#字符串转数字,Parse失败时TryParse返回true