كيفية الحصول على إصدار التجميع (assembly file version) في C#؟
مرحباً بالجميع! أنا مبتدئ في C# وأكتب تطبيقاً بسيطاً لـ Windows Forms. أحتاج إلى عرض إصدار برنامجي في عنوان النافذة (شيء مثل "MyProgram v1.2.3.4"). أعلم أن هناك ملف AssemblyInfo.cs في المشروع حيث أحدد الإصدار، لكن كيف يمكنني قراءته أثناء وقت التشغيل؟
لقد جربت استخدام Assembly.GetExecutingAssembly().GetName().Version لكنه يعيد 0.0.0.0، على الرغم من أنني في AssemblyInfo.cs لدي [assembly: AssemblyVersion("1.0.0.0")] و [assembly: AssemblyFileVersion("2.0.0.0")]. ما الفرق بين AssemblyVersion و AssemblyFileVersion؟ وكيف يمكنني الحصول على FileVersion بشكل صحيح لعرضه للمستخدم؟
إليك مثال الكود الخاص بي الذي لا يعمل كما ينبغي:
```csharp
using System;
using System.Reflection;
class Program
{
static void Main()
{
var version = Assembly.GetExecutingAssembly().GetName().Version;
Console.WriteLine($"الإصدار: {version}");
// يطبع: الإصدار: 0.0.0.0
}
}
```
أرجو المساعدة، من فضلكم.