CodeTypeDeclaration.IsPartial Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает значение, указывающее, является ли объявление типа завершенным или частичным.
public:
property bool IsPartial { bool get(); void set(bool value); };
public bool IsPartial { get; set; }
member this.IsPartial : bool with get, set
Public Property IsPartial As Boolean
Значение свойства
true Значение , если объявление класса или структуры является частичным представлением реализации; false Если объявление является полной реализацией класса или структуры. Значение по умолчанию — false.
Примеры
В этом примере показано использование CodeTypeDeclaration реализации класса в нескольких объявлениях. В примере создается инструкция начального объявления класса и присваивается IsPartial значение trueсвойства.
CodeTypeDeclaration baseClass = new CodeTypeDeclaration("DocumentProperties");
baseClass.IsPartial = true;
baseClass.IsClass = true;
baseClass.Attributes = MemberAttributes.Public;
baseClass.BaseTypes.Add(new CodeTypeReference(typeof(System.Object
)));
// Add the DocumentProperties class to the namespace.
sampleSpace.Types.Add(baseClass);
Dim baseClass As CodeTypeDeclaration = New CodeTypeDeclaration("DocumentProperties")
baseClass.IsPartial = True
baseClass.IsClass = True
baseClass.Attributes = MemberAttributes.Public
baseClass.BaseTypes.Add(New CodeTypeReference(GetType(System.Object)))
' Add the DocumentProperties class to the namespace.
sampleSpace.Types.Add(baseClass)
Другой метод в примере расширяет реализацию класса. Этот метод создает новую инструкцию объявления типа для существующего класса и задает для свойства значение IsPartialtrue. Компилятор объединяет два объявления частичного типа для полной реализации класса.
CodeTypeDeclaration baseClass = new CodeTypeDeclaration("DocumentProperties");
baseClass.IsPartial = true;
baseClass.IsClass = true;
baseClass.Attributes = MemberAttributes.Public;
// Extend the DocumentProperties class in the unit namespace.
docPropUnit.Namespaces[0].Types.Add(baseClass);
Dim baseClass As CodeTypeDeclaration = New CodeTypeDeclaration("DocumentProperties")
baseClass.IsPartial = True
baseClass.IsClass = True
baseClass.Attributes = MemberAttributes.Public
' Extend the DocumentProperties class in the unit namespace.
docPropUnit.Namespaces(0).Types.Add(baseClass)
Комментарии
Можно создать реализацию класса или структуры в одном полном объявлении или распространить реализацию по нескольким объявлениям. Реализации обычно предоставляются в одном объявлении полного типа. В этом случае задайте для свойства falseобъявления IsPartial типа значение, указывающее, что объявление типа представляет все сведения для реализации класса или структуры.
Объявление частичного типа упрощает создание различных частей реализации класса или структуры в разных модулях приложения. Объявления частичного типа могут храниться в одном исходном файле или распространяться по нескольким исходным файлам, которые в конечном итоге компилируются вместе, чтобы сформировать реализацию объединенного типа.
Язык C# поддерживает объявления частичного типа классов и структур с помощью ключевого partial слова. Visual Basic поддерживает объявления частичного типа классов и структур с ключевым словом Partial . Не все генераторы кода поддерживают объявления частичного типа, поэтому следует протестировать эту поддержку, вызвав Supports метод с флагом PartialTypes.
Замечание
Объявления частичного типа поддерживаются для классов и структур. Если указать объявление частичного типа для перечисления или интерфейса, созданный код создает ошибки компилятора.
При предоставлении реализации класса или структуры в нескольких объявлениях задайте IsPartial свойство true для начального объявления и всех дополнительных объявлений. Первоначальное объявление должно полностью указать сигнатуру типа, включая модификаторы доступа, унаследованные типы и реализованные интерфейсы. Дополнительные объявления не должны повторно указывать сигнатуру типа. Ошибка компилятора обычно приводит к переопределению сигнатуры типа в дополнительном объявлении.
Visual Studio 2005 использует частичные типы для разделения пользовательского кода из кода конструктора. В проектах приложений Windows Visual Basic пользовательский код помещается в частичный класс, который не соответствует Partial ключевому слову; предоставленный конструктором код отображается в частичном классе, который имеет Partial ключевое слово. В C#код пользователя и код конструктора отображаются в частичных классах, определяемых ключевым словом partial .