문제

적절한 열거로 완성 된 TypeScript 인터페이스 클래스를 생성하려고합니다.

나는 열거적인 멤버의 가치를 얻는 방법에 갇혀 있습니다.

Enum.members는 CodeProperties가 아닌 CodeElements를 얻고 시도하고 캐스트하면 깨집니다. 또한 Codeenum 과도 깨집니다.

내가하려고하는 것은 값을 얻는 것입니다. 값 1 = 1, value2 = 2 등으로 명시 적으로 값 1 대신 value2가 0을 기반으로하지 않기 때문에 value2 대신 value2가 명시 적입니다.

모든 도움은 대단히 감사하겠습니다.

도움이 되었습니까?

해결책

"CodeElements"Envdte 인터페이스를 사용하여 열거에 액세스하는 것처럼 들립니다. 그렇다면 모든 열거 품목이 Members-Property EnvDTE.CodeEnum 유형. 그들은 유형입니다 EnvDTE.CodeVariable 그리고 명시 적 값은 InitExpression 변수의.

이 열거를 살펴보십시오.

    // C# Enum to reflect 
    public enum MyEnum { Hi = 10, There = 15 }

그리고 열거를 반영하는이 T4 CodesNippet :

    <#
      // the enumeration object you already seem to have
      EnvDTE.CodeEnum theEnum;

      // iterate all enumeration items
      foreach(EnvDTE.CodeVariable variable in theEnum.Members)
      {
          // render name and value
          #><#= variable.Prototype #> = <#= variable.InitExpression.ToString() #>
    <#}
    #>

결과를 초래해야합니다.

    Hi = 10
    There = 15

도움이되기를 바랍니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top