如何使用Linq to SQL检索存储过程模式?

时间:2008-12-05 19:14:25

标签: c# visual-studio-2008 linq linq-to-sql

基本上我试图使用Linq to SQL检索存储过程参数列表?有没有办法做到这一点?

2 个答案:

答案 0 :(得分:2)

答案 1 :(得分:2)

在设计时?只需将存储过程拖到LINQ设计器表面即可。


在运行时?

你需要这样的SQL:

SELECT *
FROM syscolumns
WHERE id =
(
  SELECT id
  FROM sysobjects
  WHERE Name = @ProcName
)

这可能由LinqToSql生成,如下所示:

var params = 
  db.sysobjects
  .Where(o => o.Name == ProcName)
  .SelectMany(o =>
    db.syscolumns
    .Where(c => c.id == o.id)
  )