0

我最近实现了一个解决方案来获取一个 SSIS 包并使用 VB.net 重新配置包的连接字符串。代码很简单:

    Const packageLocation As String = "C:\mylocation"
    Dim app As New Application
    Dim pkg = app.LoadPackage(packageLocation, Nothing)

    pkg.Connections.Item(0).ConnectionString = "Data Source=MySource"

我需要用 C# 编写相同的代码,因为那是我们 QA 团队的母语,但是我似乎无法访问 Item 属性:

     const string PackageLocation = @"C:\MyLocation";
     Application app = new Application();
     Package pkg = app.LoadPackage(PackageLocation, null);

     pkg.Connections.Item(0).ConnectionString = "Data Source=Mysource";

我不明白为什么我不能在我的代码的 C# 版本中访问 Connections.Item,但我可以使用 VB 版本。我究竟做错了什么?

4

1 回答 1

2

在 C# 中,数组语法使用方括号:

pkg.Connections.Item[0].ConnectionString = "Data Source=Mysource";

或者,因为Item似乎是Connections该类的默认索引器,所以完全不考虑它:

pkg.Connections[0].ConnectionString = "Data Source=Mysource";
于 2012-06-20T20:49:11.947 回答