Я могу что-то упустить, но я получаю, как мне кажется, странную ошибку, которую никто из других разработчиков не получает с тем же кодом ...
public void SomeMethod(... symbolInfo)
{
ElementId elementId = symbolInfo.GetElementIds().Head(true);
if (elementId.HasValue())
{
// error here "Use of possibly unassigned field 'Type'"
object element = repository.FindElement(elementId.Type, elementId.Id);
if (element != null) { ... }
}
}
public struct ElementId
{
public string Id;
public MDAPI_ElementType Type;
}
со следующим расширениемметоды:
public static bool IsEmpty(this ElementId id)
{
return id.Type == ElementType.ElementUnknown || string.IsNullOrEmpty(id.Id);
}
public static bool HasValue(this ElementId id)
{
return !id.IsEmpty();
}
Может кто-нибудь сказать мне, почему это не будет строить?