当您通过 DataContext 对象上的属性记录 LINQ-to-SQL 的查询输出Log
时,您将获得类似于以下内容的输出:
SELECT [t0].[fullaname], [t0].[Worker], [t0].[Office]
FROM [dbo].[Workers] AS [t0]
WHERE [t0].[OfficeID] = @p0
ORDER BY [t0].[Name]
-- @p0: Input Int (Size = 0; Prec = 0; Scale = 0) [412]
-- Context: SqlProvider(Sql2005) Model: AttributedMetaModel Build: 3.5.30729.1
在这个例子中,我只是Worker
用ID = 412
. @p0
但是,由于LINQ 输出的注释格式,此输出不会直接在 SQL Management Studio 查询窗口中执行。
有谁知道是否有一个采用这种格式的存储过程以便我可以执行它?我查看了参数化查询过程,但也许我只是没有看到它。如果没有过程,我将编写一个解析器,将这种格式转换为“普通”SQL...
谢谢!
笔记:
我知道我可以在顶部进行定义,如SQL/LINQ 调试帮助@p0
中所示,但是 - 我有很多这样的查询,比如 20 个参数,所以复制和粘贴工作变得很繁琐......