Подтвердить что ты не робот

Автоматически генерируются GUID для типов в .NET?

Согласованы ли автоматически созданные идентификаторы GUID для типов С#? Например, если я получу GUID для своего интерфейса, IFoo (typeof(IFoo).GUID), при первом запуске программы я получаю тот же самый GUID каждый раз, когда запускаю программу?

Я тестировал его локально на своей машине, и, похоже, он всегда был тем же, но я не уверен, могу ли я полагаться на него, всегда будучи одним и тем же на машинах.

4b9b3361

Ответ 1

Смотрите: стабильность System.Type.GUID. Похоже, что текущая реализация метода основывается на внутреннем вызове, который реализуется самим CLR. Если Microsoft не уточняет контракты для автогенерированных Гидов (в этой статье в настоящее время неактуальна документация Type.GUID), Я бы не стал полагаться на наблюдаемое поведение. Чтобы убедиться в согласованности, я рекомендую явно украсить типы, о которых идет речь, с помощью GuidAttribute.

Ответ 2

Он не задокументирован, поэтому я не буду полностью полагаться на них, сказал, что реализация может или не может измениться в будущем.