如何在 LINQ to SQL 中使用系统存储过程
我想将“msdb.dbo.sp_help_job”系统存储过程添加到 LINQ to SQL 对象,但我不知道如何指定它。如果我在服务器资源管理器中创建新的数据连接并指定所需服务器的“msdb”数据库,然后导航到“存储过程”,则不会列出该过程。我是不是找错地方了?
我过去添加过常规(用户定义)存储过程,没有任何问题。我知道我可以通过在数据上下文上通过“ExecuteCommand”执行它来到达那里,并且我还可以创建一个“包装器”存储过程,除了调用“sp_help_job”之外什么也不做,但我想知道如何将它连接起来直接到 LINQ,或者如果可能的话。
I'd like to add the "msdb.dbo.sp_help_job" system stored procedure to a LINQ to SQL object, but I can't figure out how to specify it. If I create a new Data Connection in Server Explorer and specify the "msdb" database of the server I want, and navigate to "Stored Procedures", that procedure is not listed. Am I looking in the wrong place?
I've added regular (user defined) stored procedures in the past with no problem. I know I could get there by executing it via "ExecuteCommand" on the data context, and I could also create a "wrapper" stored procedure that did nothing but call "sp_help_job", but I'd like to know how to hook it up directly to LINQ, or if it's even possible.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
系统存储过程实际上并不位于数据库中,而是位于只读资源数据库中。
http://msdn.microsoft.com/en-us/library/ms190940。 aspx
但是,您可以通过以下方法找到它们:
使用 LINQ to SQL 访问系统数据库/表?
The System Stored Procedures are not actually sitting inside your database, but rather the Read-Only Resource database.
http://msdn.microsoft.com/en-us/library/ms190940.aspx
However, here's how you can make it possible to find them:
Accessing System Databases/Tables using LINQ to SQL?