--- title: Null-coalescing Operator localeTitle: Null-coalescing Operator --- # Null-coalescing Operator يتم استخدام عامل التوحيد للفرز في C # للمساعدة في تعيين متغير واحد إلى آخر وتحديد قيمة بديلة إذا كانت قيمة المصدر `null` . عامل التوليف في C # هو `??` . ## مثال 1 بما أن `name` `null` ، فسيتم تعيين `name` `clientName` "John Doe". ```csharp string name = null; string clientName = name ?? "John Doe"; Console.WriteLine(clientName); ``` ```csharp > John Doe ``` ## مثال 2 نظرًا لأن `name` ليس `null` ، فسيتم تعيين `name` `clientName` ، وهو "Jane Smith". ```csharp string name = "Jane Smith"; string clientName = name ?? "John Doe"; Console.WriteLine(clientName); ``` ```csharp > Jane Smith ``` ## بديل إلى if… else Statement يمكنك استخدام عبارة `if...else` لاختبار وجود `null` وتعيين قيمة مختلفة. `string clientName; if (name != null) clientName = name; else clientName = "John Doe"; ` ومع ذلك ، يمكن تبسيط ذلك إلى حد كبير باستخدام مشغل التوليف الفارغ. ```csharp string clientName = name ?? "John Doe"; ``` ## بديل لمشغل (شرطي) شرطي من الممكن أيضًا استخدام المشغل الشرطي لاختبار وجود قيمة `null` وتعيين قيمة مختلفة. ```csharp string clientName = name != null ? name : "John Doe"; ``` مرة أخرى ، يمكن تبسيط ذلك باستخدام مشغل التوليف الفارغ. ```csharp string clientName = name ?? "John Doe"; ``` ## المراجع * [؟؟ المشغل (C # مرجع)](https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/operators/null-conditional-operator)