Частичные классы охватывают несколько файлов.
How can you use the partial modifier on a C# class declaration?
С частичным вы можете физически разделить класс на несколько файлов.
Эточасто выполняется генераторами кода.
Пример
С обычными классами C # нельзя объявить класс в двух отдельных файлах в одном проекте.
Но с частичным модификатором вы можете.
Это полезно, если один файл обычно редактируется, а другой генерируется машиной или редко редактируется.
An Example will clear your concept.
class Program
{
static void Main()
{
A.A1();
A.A2();
}
}
//Contents of file A1.cs: C#
using System;
partial class A
{
public static void A1()
{
Console.WriteLine("A1");
}
}
//Contents of file A2.cs: C#
using System;
partial class A
{
public static void A2()
{
Console.WriteLine("A2");
}
}
Output
A1
A2
Требуется частичноездесь.
If you remove the partial modifier, you will get an error containing this text: [The namespace '<global namespace>' already contains a definition for 'A'].
Подсказка: Чтобы исправить это, вы можете использовать частичное ключевое слово или изменить одно из имен классов.
How does the C# compiler deal with partial classes?
Если вы разберете вышеуказанную программу, вы увидите, что файлы A1.cs и A2.cs удалены.
Вы обнаружите, что класс Aприсутствует.
Дизассемблер IL Итак: класс A будет содержать методы A1 и A2 в одном кодовом блоке.Два класса были объединены в один.
Скомпилированный результат A1.cs и A2.cs: C #
internal class A
{
// Methods
public static void A1()
{
Console.WriteLine("A1");
}
public static void A2()
{
Console.WriteLine("A2");
}
}
Сводка
Частичные классы могут упростить определенные ситуации программирования на C #.
Они часто используются в Visual Studio при создании программ Windows Forms / WPF.
Машинный код C # является отдельным.
Или Вы можете найти полное описание здесь .