我只是想知道如何使用Visual Studio(2005)自动增加我的文件的构建(和版本?).
如果我查找say的属性C:\Windows\notepad.exe
,Version选项卡会显示"File version:5.1.2600.2180".我想在我的dll版本中获得这些很酷的数字,而不是版本1.0.0.0,让我们面对它有点沉闷.
我尝试了一些东西,但它似乎不是开箱即用的功能,或者我只是在寻找错误的地方(像往常一样).
我主要从事网络项目....
我看了两个:
我无法相信,做一些事情的努力是标准做法.
编辑: 据我所知,它在VS2005中不起作用(http://www.codeproject.com/KB/dotnet/AutoIncrementVersion.aspx)
由于dotnet核心移回到.csproj
格式,因此有一个新的自动生成MyProject.AssemblyInfo.cs
,其中包含.
[assembly: AssemblyCompany("MyProject")]
[assembly: AssemblyVersion("1.0.0.0")]
Run Code Online (Sandbox Code Playgroud)
请注意,每次构建时都会自动重新生成.以前该文件位于/ obj /目录中,现在它似乎只在内存中,因为在磁盘上找不到该文件并且单击错误消息不会打开任何文件.
由于它们在那里定义,我无法在经典中定义它们AssemblyInfo.cs
.
我在哪里/如何定义项目的公司和版本?
C#的异常类有一个source属性,默认情况下设置为程序集的名称.
有没有另一种方法来获得这个确切的字符串(没有解析不同的字符串)?
我尝试过以下方法:
catch(Exception e)
{
string str = e.Source;
//"EPA" - what I want
str = System.Reflection.Assembly.GetExecutingAssembly().FullName;
//"EPA, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
str = typeof(Program).FullName;
//"EPA.Program"
str = typeof(Program).Assembly.FullName;
//"EPA, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
str = typeof(Program).Assembly.ToString();
//"EPA, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
str = typeof(Program).AssemblyQualifiedName;
//"EPA.Program, EPA, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
}
Run Code Online (Sandbox Code Playgroud) 我有一个多项目的解决方案.我试图通过链接一个解决方案范围的程序集信息文件来优化AssemblyInfo.cs文件.这样做的最佳做法是什么?哪些属性应该在解决方案范围的文件中,哪些属于项目/程序集特定?
编辑:如果您有兴趣,有一个后续问题AssemblyVersion,AssemblyFileVersion和AssemblyInformationalVersion之间有什么区别?
在新的Visual Studio 2017 .csproj项目文件中从AssemblyInfo放置InternalsVisibleTo的位置?
我想使用内部版本号附加我们的应用程序版本.例如,1.3.0.201606071
.
在AssemblyInfo中设置它时,我得到以下编译错误:
错误CS7034指定的版本字符串不符合所需的格式 - 主要[.minor [.build [.revision]]]
装配信息:
[assembly:System.Reflection.AssemblyFileVersionAttribute("1.0.0.201606071")]
[assembly:System.Reflection.AssemblyVersionAttribute("1.0.0.201606071")]
[assembly:System.Reflection.AssemblyInformationalVersionAttribute("1.0.0.201606071")]
Run Code Online (Sandbox Code Playgroud)
为什么会这样?
我正在研究一个程序,我正在尝试显示程序集FILE版本
public static string Version
{
get
{
Assembly asm = Assembly.GetExecutingAssembly();
FileVersionInfo fvi = FileVersionInfo.GetVersionInfo(asm.Location);
return String.Format("{0}.{1}", fvi.FileMajorPart, fvi.FileMinorPart);
}
}
Run Code Online (Sandbox Code Playgroud)
目前,这只返回"AssemblyVersion"中的前两个版本号,而不是"AssemblyFileVersion".我真的很想引用AssemblyFileVersion,而不是存储一个名为"Version"的内部变量,我必须更新它和程序集版本......
[assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyFileVersion("3.5.0")]
Run Code Online (Sandbox Code Playgroud)
那是AssemblyInfo.cs中的AssemblyFileVersion.我想引用"3.5.x"部分,而不是"1.0.*":/
谢谢,扎克
每当我创建新的WPF应用程序或WPF用户控件库时,该AssemblyInfo.cs
文件都包含以下属性:
[assembly: ThemeInfo(
ResourceDictionaryLocation.None,
//where theme specific resource dictionaries are located
//(used if a resource is not found in the page,
// or application resource dictionaries)
ResourceDictionaryLocation.SourceAssembly
//where the generic resource dictionary is located
//(used if a resource is not found in the page,
// app, or any theme specific resource dictionaries)
)]
Run Code Online (Sandbox Code Playgroud)
这个ThemeInfo
属性是什么?如果我删除它会破坏任何东西吗?
我们AssemblyInfo.cs
的Web应用程序中有一个文件,但我们在同一个解决方案中有其他项目.他们大多是类库.我被告知要AssemblyInfo.cs
在我们的UI上显示汇编版本.我在程序中的C#AssemblyFileVersion用法中找到了以下解决方案
using System.Reflection;
Version version = Assembly.GetExecutingAssembly().GetName().Version;
Run Code Online (Sandbox Code Playgroud)
要么
using System.Reflection;
using System.IO;
FileVersionInfo fv = System.Diagnostics.FileVersionInfo.GetVersionInfo
(Assembly.GetExecutingAssembly().Location);
Console.WriteLine("AssemblyVersion : {0}",
Assembly.GetExecutingAssembly().GetName().Version.ToString());
Console.WriteLine ("AssemblyFileVersion : {0}" ,
fv.FileVersion.ToString ());
Run Code Online (Sandbox Code Playgroud)
但这让我感到困惑.它说GetExecutingAssembly()
,如果它在其他类库的另一个程序集上运行怎么办?这些代码AssemblyInfo.cs
是否会始终从驻留在Web项目中的文件中获取?(这就是我想要的)
是否可以在运行时检索此值?
我想将值保存在一个地方,并在我的应用程序需要输出我公司的名称时检索它.
assemblyinfo ×10
c# ×7
.net ×3
.net-core ×1
asp.net ×1
asp.net-mvc ×1
assemblies ×1
attributes ×1
csproj ×1
msbuild ×1
reflection ×1
themes ×1
wpf ×1
xaml ×1