Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 创建动态部件版本,包括日期和随机修订号_C#_Asp.net_Asp.net Mvc_Version_Assemblyversionattribute - Fatal编程技术网

C# 创建动态部件版本,包括日期和随机修订号

C# 创建动态部件版本,包括日期和随机修订号,c#,asp.net,asp.net-mvc,version,assemblyversionattribute,C#,Asp.net,Asp.net Mvc,Version,Assemblyversionattribute,我正在寻找一种为我的ASP.NET MVC5解决方案创建动态程序集版本的方法,以便它遵循以下格式: YYYY.M.D.XXXXX 例如: 2014.7.25.45261 理想情况下,我希望在AssemblyInfo.cs中执行以下操作: DateTime dt = DateTime.Today; [assembly: AssemblyVersion(String.Format("{0}.{1}.{2}.*", dt.Year, dt.Month. dt.Day))] 但我知道这是不可能的 是否

我正在寻找一种为我的ASP.NET MVC5解决方案创建动态程序集版本的方法,以便它遵循以下格式:

YYYY.M.D.XXXXX

例如:

2014.7.25.45261

理想情况下,我希望在
AssemblyInfo.cs
中执行以下操作:

DateTime dt = DateTime.Today;
[assembly: AssemblyVersion(String.Format("{0}.{1}.{2}.*", dt.Year, dt.Month. dt.Day))]
但我知道这是不可能的


是否有其他方法可以实现此目的?

版本通常由生成服务器设置,但是您可以使用T4模板生成程序集信息。我这样做是为了不必手动更改日期。添加名为AssemblyInfo.tt的文件,并将以下内容添加到其中:

<#@ template language="C#" #>
using System.Reflection;
using System.Resources;
using System.Runtime.InteropServices;

#if DEBUG
[assembly: AssemblyConfiguration("Debug")]
#else
[assembly: AssemblyConfiguration("Release")]
#endif

[assembly: AssemblyCompany("My Company")]
[assembly: AssemblyProduct("My Product")]
[assembly: AssemblyCopyright("Copyright © My Company <#=DateTime.Now.Year#>")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
[assembly: NeutralResourcesLanguage("en")]
[assembly: ComVisible(false)]
[assembly: AssemblyFileVersion("1.0.0.0")]
// etc.

运用系统反思;
利用系统资源;
使用System.Runtime.InteropServices;
#如果调试
[程序集:程序集配置(“调试”)]
#否则
[组件:组件配置(“发布”)]
#恩迪夫
[大会:大会公司(“我的公司”)]
[组装:组装产品(“我的产品”)]
[大会:大会版权所有(“版权所有©我的公司”)]
[组装:组装商标(“”)]
[大会:大会文化(“”)
[汇编:NeutralResourcesLanguage(“en”)]
[大会:ComVisible(false)]
[程序集:AssemblyFileVersion(“1.0.0.0”)]
//等等。

添加生成版本号所需的代码。有关更多信息,请参阅:

谢谢,这正是我想要的