LEO's DotNET Blog

技术 业务 = 企业应用软件

博客园 首页 新随笔 联系 订阅 管理
  45 Posts :: 0 Stories :: 102 Comments :: 2 Trackbacks

以下代码是在VB.NET(Framework 2.0)中调用SQLServer2005 的Intergration Service中DTS包。
1 如果要在WebService中调用DTS,必须用VB.NET语言。因为如果用C#编写WebService的话,将无法引用Microsoft.SqlServer.ManagedDTS组件。
2 将NETWORK SERVICE帐户添加到Administrator组中,否则将不能执行DTS。(会带来安全漏洞)

 1 Imports Microsoft.SqlServer.Dts.Runtime
 2 
 3 'WebService代码
 4     <WebMethod()> _
 5     Public Function ExecutePackage() As Integer
 6         Dim pkg As String = "D:\Development\Programe\PackageDev\Package\MG-TSJF-PKG.dtsx"
 7 
 8         Dim app As Application = New Application()
 9         Dim p As Package = app.LoadPackage(pkg, Nothing)
10         'p.InteractiveMode = True
11 
12         Dim vir As Variables = p.Variables
13         vir("用户::PackageID").Value = 4
14 
15         If p.Execute(Nothing, vir, NothingNothingNothing= DTSExecResult.Success Then
16             Return 0
17         Else
18             Return 1
19         End If
20     End Function
posted on 2006-08-29 18:36 !LEO 阅读(2161) 评论(7)  编辑 收藏 网摘

Feedback

#1楼 2006-08-29 19:06 aspnetx      
如果要在WebService中调用DTS,必须用VB.NET语言。因为如果用C#编写WebService的话,将无法引用Microsoft.SqlServer.ManagedDTS组件。

不是这么恐怖吧

  回复  引用  查看    

注册
  回复  引用    

#3楼 2006-08-30 08:34 Derek[未注册用户]
http://www.codeproject.com/useritems/CallSSISFromCSharp.asp
  回复  引用    

为什么不用存储过程来调用DTS 然后用C#调用存储过程呢?
  回复  引用    

#5楼 2007-05-30 09:30 august[未注册用户]
Imports Microsoft.SqlServer.Dts.Runtime
请问这个vb.net组件从哪能下载?谢谢

  回复  引用    

#6楼 2008-09-23 12:28 Nina      
C#也有這個組件啊。
請問有如何在ssis里面將變量寫入db?

  回复  引用  查看    

#7楼 2009-01-14 14:40 Mohammed      
1。c#中也可以引用Microsoft.SqlServer.ManagedDTS程序集的。

2。不需要将NETWORK SERVICE加入,加载包时指明数据库用户名和密码就可以了。


  回复  引用  查看    




发表评论

昵称: [登录] [注册]

主页:

邮箱:(仅博主可见)

评论内容:

  登录  注册

[使用Ctrl+Enter键快速提交评论]

0 489681




相关文章:

相关链接: