Avatar ·

كيفية عرض decimal بمنزلتين عشريتين في C#؟

مرحباً بالجميع! أنا مطور C# مبتدئ، واجهت مشكلة في تنسيق أرقام decimal. أحتاج إلى عرض سعر المنتج بتنسيق بمنزلتين عشريتين، على سبيل المثال: 12.50، 99.99، 145.00.

المشكلة هي أنه عندما أستخدم Console.WriteLine أو ToString()، أحصل على عدد مختلف من المنازل. إليك الكود الخاص بي:

decimal price = 12.5m;
decimal tax = 0.12345m;
decimal total = 150m;

Console.WriteLine(price);   // يطبع: 12,5
Console.WriteLine(tax);     // يطبع: 0,12345
Console.WriteLine(total);   // يطبع: 150

لقد جربت خيارات مختلفة، لكنها لا تعمل كما ينبغي. على سبيل المثال، كتبت:

Console.WriteLine(price.ToString("0.00")); // يطبع: 12,50 - هذا طبيعي
Console.WriteLine(total.ToString("0.00")); // يطبع: 150,00 - جيد أيضاً

لكن عندما أحاول استخدام التنسيق داخل سلسلة نصية، يحدث لدي ارتباك مع الفواصل. في روسيا تُستخدم الفاصلة، لكني أحتاج إلى نقطة.