首页 > 解决方案 > Dts.Connections 中的代码页在哪里?

问题描述

代码页在平面文件连接管理器上指定。在脚本任务中,Dts.Connections 可用。在哪里可以找到连接的代码页?

>Debug.Print Dts.Connections[0]
{Microsoft.SqlServer.Dts.Runtime.ConnectionManager}
    ConnectionString: "C:\\data\\in\\devl\\file001.txt"
    CreationName: "FLATFILE"
    DelayValidation: false
    Description: ""
    HasExpressions: false
    HostType: ConnectionManager
    ID: "{AA4BD889-B2B2-4920-98D2-0CAA6F3CD722}"
    InnerObject: {System.__ComObject}
    Name: "FFCM-in"
    OfflineMode: false
    Properties: {Microsoft.SqlServer.Dts.Runtime.DtsProperties}
    ProtectionLevel: EncryptSensitiveWithUserKey
    Qualifier: ""
    Scope: Package
    Site: null
    SupportsDTCTransactions: false
    VariableDispenser: {Microsoft.SqlServer.Dts.Runtime.VariableDispenser}
    Variables: {Microsoft.SqlServer.Dts.Runtime.Variables}

标签: sql-serverssis

解决方案


嗯,你可以试试下面的 -- 将 InnerObject 转换为 IDTSConnectionManagerFlatFile100 类型,它可以在 Microsoft.SqlServer.Dts.Runtime.Wrapper 中找到。就像下面的例子:

IDTSConnectionManagerFlatFile100 ffParams;
ffParams = yourConnectionManager.InnerObject as IDTSConnectionManagerFlatFile100;
ffParams.CodePage // Property with your Codepage

或者您可以从连接管理器属性中检查它,例如:

yourConnectionManager.Properties["CodePage"].GetValue(yourConnectionManager).ToString()

推荐阅读