使用LINQ to SQL访问系统数据库/表?

现在我有一个每天早上运行的SSIS包,并向我报告前一天失败或成功的包数。 这些包的信息部分包含在SQL Server 2005中 msdb数据库(系统数据库)中的sysjobs表(系统表)中。

当试图将包移动到C#可执行文件(主要是为了获得更好的格式化发送的电子邮件)时,我无法找到一种方法来创建允许我通过LINQ访问这些表的dbml文件。 我试图寻找可以使这些表可见的任何属性,但我没有太多运气。

LINQ to SQL可以实现这一点吗?

如果您在服务器资源管理器中,则可以通过以下方式显示它们:

  • 创建与所需服务器的连接。
  • 右键单击服务器,然后选择“更改视图”>“对象类型”。
  • 您现在应该看到系统表和用户表。 你应该在那里看到sysjobs,你可以轻松地将它拖到.dbml表面上。

它可能在设计器中不可用,但为什么不将它添加到DBML文件本身?