using System; using System.Collections.Generic; using System.Text; using System.Reflection; namespace IndianHealthService.BMXNet.Util { /// /// Convienence class to provide information from the AssembleInfo /// /// [assembly: AssemblyTitle("IndianHealthService.BMXNet.Test")] /// [assembly: AssemblyDescription("A test application")] /// [assembly: AssemblyCompany("IHS")] /// [assembly: AssemblyProduct("IndianHealthService.BMXNet.Test")] /// [assembly: AssemblyCopyright("IHS 2009")] /// [assembly: AssemblyVersion("2.0.0.0")] /// /// public static class EntryAssemblyInfo { /// /// Convienence method to provide information from the AssembleInfo /// /// [assembly: AssemblyTitle("IndianHealthService.BMXNet.Test")] /// /// public static string AssemblyTitle { get { // Get all Title attributes on this assembly object[] attributes = Assembly.GetEntryAssembly().GetCustomAttributes(typeof(AssemblyTitleAttribute), false); // If there is at least one Title attribute if (attributes.Length > 0) { // Select the first one AssemblyTitleAttribute titleAttribute = (AssemblyTitleAttribute)attributes[0]; // If it is not an empty string, return it if (titleAttribute.Title != "") return titleAttribute.Title; } // If there was no Title attribute, or if the Title attribute was the empty string, return the .exe name return System.IO.Path.GetFileNameWithoutExtension(Assembly.GetExecutingAssembly().CodeBase); } } /// /// Convienence method to provide information from the AssembleInfo /// /// [assembly: AssemblyVersion("2.0.0.0")] /// /// public static string AssemblyVersion { get { return Assembly.GetEntryAssembly().GetName().Version.ToString(); } } /// /// Convienence method to provide information from the AssembleInfo /// /// [assembly: AssemblyDescription("A test application")] /// /// public static string AssemblyDescription { get { // Get all Description attributes on this assembly object[] attributes = Assembly.GetEntryAssembly().GetCustomAttributes(typeof(AssemblyDescriptionAttribute), false); // If there aren't any Description attributes, return an empty string if (attributes.Length == 0) return ""; // If there is a Description attribute, return its value return ((AssemblyDescriptionAttribute)attributes[0]).Description; } } /// /// Convienence method to provide information from the AssembleInfo /// /// [assembly: AssemblyProduct("IndianHealthService.BMXNet.Test")] /// /// public static string AssemblyProduct { get { // Get all Product attributes on this assembly object[] attributes = Assembly.GetEntryAssembly().GetCustomAttributes(typeof(AssemblyProductAttribute), false); // If there aren't any Product attributes, return an empty string if (attributes.Length == 0) return ""; // If there is a Product attribute, return its value return ((AssemblyProductAttribute)attributes[0]).Product; } } /// /// Convienence method to provide information from the AssembleInfo /// /// [assembly: AssemblyCopyright("IHS 2009")] /// /// public static string AssemblyCopyright { get { // Get all Copyright attributes on this assembly object[] attributes = Assembly.GetEntryAssembly().GetCustomAttributes(typeof(AssemblyCopyrightAttribute), false); // If there aren't any Copyright attributes, return an empty string if (attributes.Length == 0) return ""; // If there is a Copyright attribute, return its value return ((AssemblyCopyrightAttribute)attributes[0]).Copyright; } } /// /// Convienence method to provide information from the AssembleInfo /// /// [assembly: AssemblyCompany("IHS")] /// /// public static string AssemblyCompany { get { // Get all Company attributes on this assembly object[] attributes = Assembly.GetEntryAssembly().GetCustomAttributes(typeof(AssemblyCompanyAttribute), false); // If there aren't any Company attributes, return an empty string if (attributes.Length == 0) return ""; // If there is a Company attribute, return its value return ((AssemblyCompanyAttribute)attributes[0]).Company; } } } }