Share via


FileSystemTask.Source Propiedad

Definición

Obtiene o establece el archivo o directorio de origen. Si IsSourcePathVariable se establece en true, obtiene o establece el nombre de la variable de paquete que representa el archivo o directorio de origen.

public:
 property System::String ^ Source { System::String ^ get(); void set(System::String ^ value); };
public string Source { get; set; }
member this.Source : string with get, set
Public Property Source As String

Valor de propiedad

Cadena que contiene el administrador de conexiones o la variable que contiene la información de archivo o carpeta de origen.

Implementaciones

Ejemplos

En el ejemplo de código siguiente se crea un FileSystemTask objeto como Executable en un paquete. FileSystemTask copia una carpeta de prueba, que contiene dos subcarpetas y un archivo .txt, en otra carpeta. El origen es una carpeta existente, no una variable, por lo que IsSourcePathVariable se establece falseen y la Source propiedad se establece para hacer referencia a un administrador de conexiones FILE.

using System;  
using System.Collections.Generic;  
using System.Text;  
using Microsoft.SqlServer.Dts.Runtime;  
using Microsoft.SqlServer.Dts.Tasks.FileSystemTask;  

namespace FileSystemTask_API  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            String sourceDir = @"C:\TestFolder";  
            String destDir = @"C:\MyNewTestFolder";  

            Package pkg = new Package();  
            Executable exec1 = pkg.Executables.Add("STOCK:FileSystemTask");  
            TaskHost th = exec1 as TaskHost;  

            // Show how to set properties using the TaskHost Properties.  
            // Set the properties to copy an existing folder, which contains two subfolders  
            // and a .txt file, to another existing folder on the C:\ drive.  

            // The source or destination files are not in a variable, so set   
            // IsSourcePathVariable and IsDestinationPathVariable to false.  
            th.Properties["IsSourcePathVariable"].SetValue(th, false);  
            th.Properties["IsDestinationPathVariable"].SetValue(th, false);  

            // Create the File connection manager for the source.  
            ConnectionManager cm = pkg.Connections.Add("FILE");  
            cm.Name = "The FILE connection manager";  
            cm.ConnectionString = sourceDir;  
            cm.Properties["FileUsageType"].SetValue(cm, DTSFileConnectionUsageType.FolderExists);  

            // Create the File connection manager for the destination.  
            ConnectionManager cmdest = pkg.Connections.Add("FILE");  
            cmdest.Name = "The destination FILE connection manager";  
            cmdest.ConnectionString = destDir;  
            cmdest.Properties["FileUsageType"].SetValue(cmdest, DTSFileConnectionUsageType.FolderExists);  

            // Set the source property and destination properties  
            // for the task.  
            th.Properties["Source"].SetValue(th, cm.Name);  
            th.Properties["Destination"].SetValue(th, cmdest.Name);  

            // The operation to perform is to copy all the files and  
             // subfolders in a folder.  
            // Do not overwrite the destination information   
            // if it exists.  
            th.Properties["Operation"].SetValue(th, DTSFileSystemOperation.CopyDirectory);  
            th.Properties["OperationName"].SetValue(th, "Copy TestFolder");  
            th.Properties["OverwriteDestinationFile"].SetValue(th, false);  

            // Set the attribute of the folder to be read-only.  
            th.Properties["Attributes"].SetValue(th, DTSFileSystemAttributes.ReadOnly);  
            // Multiple attributes can be set. The next line of code,  
            // commented out, shows how to do that.  
            //th.Properties["Attributes"].SetValue(th, DTSFileSystemAttributes.ReadOnly | DTSFileSystemAttributes.Hidden);  

            // Run the task and copy the folder.  
            DTSExecResult result = pkg.Execute();  
        }  
    }  
}  
Imports System  
Imports System.Collections.Generic  
Imports System.Text  
Imports Microsoft.SqlServer.Dts.Runtime  
Imports Microsoft.SqlServer.Dts.Tasks.FileSystemTask  

Namespace FileSystemTask_API  
    Class Program  
        Shared  Sub Main(ByVal args() As String)  
            Dim sourceDir As String =  "C:\TestFolder"   
            Dim destDir As String =  "C:\MyNewTestFolder"   

            Dim pkg As Package =  New Package()   
            Dim exec1 As Executable =  pkg.Executables.Add("STOCK:FileSystemTask")   
            Dim th As TaskHost =  exec1 as TaskHost   

            ' Show how to set properties using the TaskHost Properties.  
            ' Set the properties to copy an existing folder, which contains two subfolders  
            ' and a .txt file, to another existing folder on the C:\ drive.  

            ' The source or destination files are not in a variable, so set   
            ' IsSourcePathVariable and IsDestinationPathVariable to false.  
            th.Properties("IsSourcePathVariable").SetValue(th, False)  
            th.Properties("IsDestinationPathVariable").SetValue(th, False)  

            ' Create the File connection manager for the source.  
            Dim cm As ConnectionManager =  pkg.Connections.Add("FILE")   
            cm.Name = "The FILE connection manager"  
            cm.ConnectionString = sourceDir  
            cm.Properties("FileUsageType").SetValue(cm, DTSFileConnectionUsageType.FolderExists)  

            ' Create the File connection manager for the destination.  
            Dim cmdest As ConnectionManager =  pkg.Connections.Add("FILE")   
            cmdest.Name = "The destination FILE connection manager"  
            cmdest.ConnectionString = destDir  
            cmdest.Properties("FileUsageType").SetValue(cmdest, DTSFileConnectionUsageType.FolderExists)  

            ' Set the source property and destination properties  
            ' for the task.  
            th.Properties("Source").SetValue(th, cm.Name)  
            th.Properties("Destination").SetValue(th, cmdest.Name)  

            ' The operation to perform is to copy all the files and  
             ' subfolders in a folder.  
            ' Do not overwrite the destination information   
            ' if it exists.  
            th.Properties("Operation").SetValue(th, DTSFileSystemOperation.CopyDirectory)  
            th.Properties("OperationName").SetValue(th, "Copy TestFolder")  
            th.Properties("OverwriteDestinationFile").SetValue(th, False)  

            ' Set the attribute of the folder to be read-only.  
            th.Properties("Attributes").SetValue(th, DTSFileSystemAttributes.ReadOnly)  
            ' Multiple attributes can be set. The next line of code,  
            ' commented out, shows how to do that.  
            'th.Properties["Attributes"].SetValue(th, DTSFileSystemAttributes.ReadOnly | DTSFileSystemAttributes.Hidden);  

            ' Run the task and copy the folder.  
            Dim result As DTSExecResult =  pkg.Execute()   
        End Sub  
    End Class  
End Namespace  

Comentarios

Si el origen no es una variable, el origen es un administrador de conexiones de archivos. La IsSourcePathVariable propiedad determina si es una variable.

Se aplica a