Поделиться через


Variable.ReadOnly Свойство

Определение

Возвращает или задает логическое значение, указывающее, что переменная доступна только для чтения и не может изменить его значение.

public:
 property bool ReadOnly { bool get(); void set(bool value); };
[Microsoft.SqlServer.Dts.Runtime.Localization.LocalizablePropertyDescription(typeof(Microsoft.SqlServer.Dts.Runtime.Localized), "ReadOnlyDesc")]
public bool ReadOnly { get; set; }
[<Microsoft.SqlServer.Dts.Runtime.Localization.LocalizablePropertyDescription(typeof(Microsoft.SqlServer.Dts.Runtime.Localized), "ReadOnlyDesc")>]
member this.ReadOnly : bool with get, set
Public Property ReadOnly As Boolean

Значение свойства

Логическое значение, указывающее состояние переменной только для чтения. Значение true указывает, что переменная доступна только для чтения. Значение false указывает, что переменная доступна для чтения и записи.

Атрибуты

Примеры

В следующем примере создается пакет, добавляется ForEachLoopи добавляется переменная в коллекциюVariables.ForEachLoop Затем он извлекает и задает свойства переменной и отображает их для просмотра, включая ReadOnly.

static void Main(string[] args)  
        {  
            Package p = new Package();  
            // Add a sequence to the package executables collection  
            Sequence seq = (Sequence)p.Executables.Add("STOCK:SEQUENCE");  
            // Add a ForEachLoop to the Sequence  
            ForEachLoop feLoop = (ForEachLoop)seq.Executables.Add("STOCK:FOREACHLOOP");  

            // Add a variable, v, to the variable collection  
           // of the ForEach loop.  
            Variable v = feLoop.Variables.Add("v", false, "global", 100);  

//  Get and set different variable properties  

            // Creation Name (read-only)  
            String createName = v.CreationName;  

            // Description (read/write)  
            v.Description = "my new v Description";  
            String vDesc = v.Description;  

            // ID (read-only)  
            String vID = v.ID;  

            // Name (read/write)  
            String oldName = v.Name;  
            v.Name = "my_new_V_name";  
            String newName = v.Name;  

            // Namespace (read/write)  
            String oldNamespace = v.Namespace;  
            v.Namespace = "my_new_v_Namespace";  
            String newNamespace = v.Namespace;  

            // Properties (read-only)  
            int pmCount = v.Properties.Count;  

            // Qualified Name (read-only)  
            String QName = v.QualifiedName;  

            // RaiseChangedEvent (read/write)  
            Boolean oldraiseChEvt = v.RaiseChangedEvent;  
            v.RaiseChangedEvent = true;  
            Boolean raiseChangedEvent = v.RaiseChangedEvent;  

            // Read-only (read/write)  
            Boolean vReadOnly = v.ReadOnly;  
            v.ReadOnly = true;  
            Boolean newVReadOnly = v.ReadOnly;  

            // System Variable (read-only)  
            Boolean sysVar = v.SystemVariable;  

            // Type (read-only)  
            TypeCode type = v.DataType;  

            // Value (read/write)  
            Object vValue = v.Value;  

            Console.WriteLine("The variable properties are: ");  
            Console.WriteLine("Creation Name   = {0}", createName);  
            Console.WriteLine("Description        = {0}", vDesc);  
            Console.WriteLine("ID                     = {0}", vID);  
            Console.WriteLine("Old name, new name = {0}, {1}", oldName, newName);  
            Console.WriteLine("Old namespace, new namespace = {0}, {1}", oldNamespace, newNamespace);  
            Console.WriteLine("Properties count   = {0}", pmCount);  
            Console.WriteLine("Qualified Name     = {0}", QName);  
            Console.WriteLine("old RaiseEvent, new RaiseEvent = {0}, {1}", oldraiseChEvt, raiseChangedEvent);  
            Console.WriteLine("old read-only, new read-only = {0}, {1}", vReadOnly, newVReadOnly);  
            Console.WriteLine("System Variable    = {0}", sysVar);  
            Console.WriteLine("Type               = {0}", type);  
        }  
Shared Sub Main(ByVal args() As String)   
    Dim p As New Package()  
    ' Add a sequence to the package executables collection  
    Dim seq As Sequence = CType(p.Executables.Add("STOCK:SEQUENCE"), Sequence)  
    ' Add a ForEachLoop to the Sequence  
    Dim feLoop As ForEachLoop = CType(seq.Executables.Add("STOCK:FOREACHLOOP"), ForEachLoop)  

    ' Add a variable, v, to the variable collection  
    ' of the ForEach loop.  
    Dim v As Variable = feLoop.Variables.Add("v", False, "global", 100)  

    '  Get and set different variable properties  
    ' Creation Name (read-only)  
    Dim createName As String = v.CreationName  

    ' Description (read/write)  
    v.Description = "my new v Description"  
    Dim vDesc As String = v.Description  

    ' ID (read-only)  
    Dim vID As String = v.ID  

    ' Name (read/write)  
    Dim oldName As String = v.Name  
    v.Name = "my_new_V_name"  
    Dim newName As String = v.Name  

    ' Namespace (read/write)  
    Dim oldNamespace As String = v.Namespace  
    v.Namespace = "my_new_v_Namespace"  
    Dim newNamespace As String = v.Namespace  

    ' Properties (read-only)  
    Dim pmCount As Integer = v.Properties.Count  

    ' Qualified Name (read-only)  
    Dim QName As String = v.QualifiedName  

    ' RaiseChangedEvent (read/write)  
    Dim oldraiseChEvt As [Boolean] = v.RaiseChangedEvent  
    v.RaiseChangedEvent = True  
    Dim raiseChangedEvent As [Boolean] = v.RaiseChangedEvent  

    ' Read-only (read/write)  
    Dim vReadOnly As [Boolean] = v.ReadOnly  
    v.ReadOnly = True  
    Dim newVReadOnly As [Boolean] = v.ReadOnly  

    ' System Variable (read-only)  
    Dim sysVar As [Boolean] = v.SystemVariable  

    ' Type (read-only)  
    Dim type As TypeCode = v.DataType  

    ' Value (read/write)  
    Dim vValue As [Object] = v.Value  

    Console.WriteLine("The variable properties are: ")  
    Console.WriteLine("Creation Name   = {0}", createName)  
    Console.WriteLine("Description        = {0}", vDesc)  
    Console.WriteLine("ID                     = {0}", vID)  
    Console.WriteLine("Old name, new name = {0}, {1}", oldName, newName)  
    Console.WriteLine("Old namespace, new namespace = {0}, {1}", oldNamespace, newNamespace)  
    Console.WriteLine("Properties count   = {0}", pmCount)  
    Console.WriteLine("Qualified Name     = {0}", QName)  
    Console.WriteLine("old RaiseEvent, new RaiseEvent = {0}, {1}", oldraiseChEvt, raiseChangedEvent)  
    Console.WriteLine("old read-only, new read-only = {0}, {1}", vReadOnly, newVReadOnly)  
    Console.WriteLine("System Variable    = {0}", sysVar)  
    Console.WriteLine("Type               = {0}", type)  
End Sub   

Образец вывода:

Свойства переменной:

Имя создания =

Description = my new v Description

ID = {622CF328-55D7-4E81-9385-9C1F8450511E}

Старое имя, новое имя = v, my_new_V_name

Старое пространство имен, новое пространство имен = глобальное, my_new_v_Namespace

Число свойств = 12

Полное имя = my_new_v_Namespace::my_new_V_name

old RaiseEvent, new RaiseEvent = False, True

old read-only, new read-only = False, True

Системная переменная = false

Type = Int32

Применяется к