在ASP.Net MVC,很容易在页面上显示网站版本/构建."*"允许 for each 生成生成一个新的哈希值,因此很容易判断正在运行的网站对应于签入源代码管理的特定生成的版本.

ASP.Net MVC:
AssemblyInfo.cs

// Version information for an assembly consists of the following four values:
//
//      Major Version
//      Minor Version 
//      Build Number
//      Revision
//
// You can specify all the values or you can default the Build and Revision Numbers 
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.*")]

Index.cshtml

<footer>
    <p>&copy; @DateTime.Now.Year - @Html.AssemblyVersion()</p>
</footer>

推荐答案

在ASP.NET核心MVC应用程序,你可以这样做.

public class VersionHelper
{
    public static string GetAssemblyVersion()
    {
        AssemblyInformationalVersionAttribute infoVersion = (AssemblyInformationalVersionAttribute)Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyInformationalVersionAttribute), false).FirstOrDefault();
        return infoVersion.InformationalVersion;
    }
}

在索引中.cshtml或_布局.cshtml,无论您的页脚定义在哪里.

<footer>
    <p>&copy; @DateTime.Now.Year - @VersionHelper.GetAssemblyVersion()</p>
</footer>
   

Csharp相关问答推荐

发布.NET框架项目将.NET核心元素注入到web. connect中

ß != ss与ICU进行不区分大小写的比较

Dapper是否可以自动扩展类成员

一种安全的方式来存储SSH凭证(MAUI/C#应用程序)

在C#WinUI中,一个关于System的崩溃."由于未知原因导致执行不例外"

将XPS转换为PDF C#

XUNIT是否使用测试数据的源生成器?

C#无法让WinForm进度条生成动画错误跨线程操作无效

当前的文化决定了错误的文化

异步任务导致内存泄漏

使用Entity Framework6在对象中填充列表会导致列表大多为空

net中从位图获取坐标和绘制折线

依赖项注入、工厂方法和处置困境

当试图限制EF Select 的列时,如何避免重复代码?

JsonSchema.Net删除假阳性判断结果

Blazor Server.NET 8中的Blazore.FluentValidation问题

CRL已过期,但ChainStatus告诉我RevocationStatus未知

C#定时器回调对象上下文?

.NET文档对继承的困惑

除非首先访问使用的终结点,否则本地API上的终结点不起作用