控制 web essential 如何从 .cs 文件生成 d.ts 文件

Posted

技术标签:

【中文标题】控制 web essential 如何从 .cs 文件生成 d.ts 文件【英文标题】:Control how web essential generates d.ts files from .cs files 【发布时间】:2014-08-06 04:39:40 【问题描述】:

例如,“Guid”类型被归类为“any”类型。

Uri 类型生成为复杂类型:


    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;

但实际上它被序列化为字符串。

所以...是否有可能以某种方式告诉 WebEssentials,如何序列化属性类型, 全局:

Guid -> string
Uri -> string

或按属性进行本地属性:

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

当然,全局按项目或解决方案更好。

【问题讨论】:

我不认为TypescriptType 来自网络要领... 【参考方案1】:

Web Essentials 似乎无法做到这一点(还没有?)。我建议你两件事:

使用TypeLITE(和我们一样)。 分叉。查看IntellisenseParser.cs 并找到GetClassName。 (如果您对此有任何进展,请告诉我。;))

【讨论】:

只是一个想法:在IntellisenseParaser.cs这里有一本字典_knownPrimitiveTypes。也许如果我们在其中添加guid 并将其指向类型string?将guids 设置为string 至少比any 略有改进

以上是关于控制 web essential 如何从 .cs 文件生成 d.ts 文件的主要内容,如果未能解决你的问题,请参考以下文章

最锋利的Visual Studio Web开发工具扩展:Web Essentials详解(转)

如何在 Web API .NET Core 的控制器之外获取当前用户

Emmet 中的单引号与 VS Web Essentials

System.Web.Optimization找不到引用

Web Essentials 2013 未使用的 CSS 无法正常工作

Visual Studio Express 2013 Web Essentials 中的 SCSS 编译错误