Если ваш вопрос заключается в том, как класс CSS может вставить конкретный символ (который будет отображаться как значок в специальном шрифте), посмотрите на источник для FontAwesome :
.icon-glass:before { content: "\f000"; }
.icon-music:before { content: "\f001"; }
.icon-search:before { content: "\f002"; }
.icon-envelope:before { content: "\f003"; }
.icon-heart:before { content: "\f004"; }
Поэтому для вставки символа используется символ CSS (который находится из специальной зарезервированной области частного использования Unicode, которая не испортит другие читатели).
Попробуйте следующий код. Значение, которое Вы ищете, хранится на экземпляре GuidAttribute, присоединенном к блоку
using System.Runtime.InteropServices;
static void Main(string[] args)
{
var assembly = typeof(Program).Assembly;
var attribute = (GuidAttribute)assembly.GetCustomAttributes(typeof(GuidAttribute),true)[0];
var id = attribute.Value;
Console.WriteLine(id);
}
Редактирование: тем, кто настаивает на downvoting... Невозможно удалить этот ответ, потому что это - принятая версия. Поэтому редактирую для включения корректного ответа ( код JaredPar ниже)
Достаточно простой, если Вы только хотите получить Выполняющийся блок:
using System.Reflection;
Assembly assembly = Assembly.GetExecutingAssembly();
//The following line (part of the original answer) is misleading.
//**Do not** use it unless you want to return the System.Reflection.Assembly type's GUID.
Console.WriteLine(assembly.GetType().GUID.ToString());
// The following is the correct code.
var attribute = (GuidAttribute)assembly.GetCustomAttributes(typeof(GuidAttribute),true)[0];
var id = attribute.Value;
Необходимо смочь считать атрибут Гуида блока через отражение. Это получит GUID для текущего блока
Assembly asm = Assembly.GetExecutingAssembly();
var attribs = (asm.GetCustomAttributes(typeof(GuidAttribute), true));
Console.WriteLine((attribs[0] as GuidAttribute).Value);
, можно заменить GuidAttribute другими атрибутами также, если Вы хотите считать вещи как AssemblyTitle, AssemblyVersion и т.д.
, можно также загрузить другой блок (блок. LoadFrom и все) вместо того, чтобы получить текущий блок - если необходимо считать эти атрибуты внешних блоков (например, - при загрузке плагина)