c# - Kontroller hvordan Web Essential genererer d.ts-filer fra .cs-filer


For eksempel genereres "Guid"-typer som "any"-type.

Uri-typen genereres som en kompleks type:

{
    AbsolutePath: string;
    AbsoluteUri: string;
    Authority: string;
    DnsSafeHost: string;
    Fragment: string;
    Host: string;
    HostNameType: any;
    IsAbsoluteUri: boolean;
    IsDefaultPort: boolean;
    IsFile: boolean;
    IsLoopback: boolean;
    IsUnc: boolean;
    LocalPath: string;
    OriginalString: string;
    PathAndQuery: string;
    Port: number;
    Query: string;
    Scheme: string;
    Segments: string[];
    UserEscaped: boolean;
    UserInfo: string;
}

men i virkeligheten blir det serialisert som en streng.

Så... Er det på en eller annen måte mulig å fortelle WebEssentials hvordan man skal serialisere propriety-typer, enten globalt:

Guid -> string
Uri -> string

eller lokalt eiendom for eiendom:

[TypescriptType(typeof(string))]
Guid Id {get; set;};

Selvfølgelig er det bedre globalt etter prosjekt eller løsning.

Svar #1

Det ser ut til at Web Essentials ikke kan gjøre dette (ennå?). Jeg vil foreslå to ting for deg:

  • Bruk TypeLITE (som vi gjorde).
  • Fork det. Se i IntellisenseParser.cs og finn GetClassName.

    • (Gi meg beskjed hvis du har noen fremgang med dette. ;))

Relaterte artikler