在嵌入式JavaScript中插入AssemblyInfo(例如DLL versionno)

时间:2016-07-13 08:05:31

标签: javascript c# .net-assembly

我的C#dll有一个嵌入式Javascript文件。在这个文件的标题中,我想包含版本信息。是否可以在JS文件中插入DLL AssemblyInfo(例如dll版本)?

2 个答案:

答案 0 :(得分:1)

没有你的代码,我无法告诉你用JS文件做什么,但这是一个想法:

  1. 将JS文件的内容读入字符串
  2. 在该字符串中将一些标记替换为您需要的DLL AssemblyInfo值
  3. 评估字符串或将其保存到临时文件(取决于您需要它)

答案 1 :(得分:0)

也许你可以用类似的方式使用T4模板引擎。 这将是例如将someFile.tt翻译为someFile.js

<#@ output extension=".js" encoding="utf-8" #>
// This file was created at <#= DateTime.Now #>
// It's version is <#= System.Reflection.Assembly.GetExecutingAssembly().GetName().Version #>

function foo() {
    console.log("bar");
}

不幸的是,这个片段不会为你做这个伎俩。它至少有两个缺陷:

  • 不会在每个构建上执行。也许看看this answer找到解决方法。
  • 不将您的项目的程序集版本插入输出中。您必须找到一种方法,找到AssemblyInfo.cs并从那里阅读该版本。

因此,虽然这个建议不会很完美,但它可能会给你一个起点。