首页 > 编程语言 >C# 每次生成之后自动更新软件版本号

C# 每次生成之后自动更新软件版本号

时间:2024-06-12 17:10:42浏览次数:6  
标签:1.0 自动更新 版本号 C# 版本 AssemblyVersion assembly 版本信息

第一步:在解决方案资源管理器中找到【AssemblyInfo.cs】文件,修改版本生成方式:[assembly: AssemblyVersion("1.0.0.*")]

 

// 程序集的版本信息由下列四个值组成: 
//
//      主版本
//      次版本
//      生成号
//      修订号
//
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示:
[assembly: AssemblyVersion("1.0.0.*")]
//[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

 

第二步:用记事本打开当前项目文件目录下的【.csproj】文件,将 <Deterministic>true</Deterministic>的值修改为【false】

 

 第三步:C#获取程序版本

// 获取当前程序集
Assembly assembly = Assembly.GetExecutingAssembly();
// 获取版本信息
Version version = assembly.GetName().Version;
// 打印版本信息 
Console.WriteLine("程序版本: " + version.ToString());
//结果:1.0.0.30766

 

标签:1.0,自动更新,版本号,C#,版本,AssemblyVersion,assembly,版本信息
From: https://www.cnblogs.com/microsoft-zh/p/18244314

相关文章

  • 在Python中使用LSTM和PyTorch进行时间序列预测|附代码数据
    全文链接:http://tecdat.cn/?p=8145最近我们被客户要求撰写关于LSTM的研究报告,包括一些图形和统计输出。顾名思义,时间序列数据是一种随时间变化的数据类型。例如,24小时内的温度,一个月内各种产品的价格,一年中特定公司的股票价格诸如长期短期记忆网络(LSTM)之类的高级深度学习模型能......
  • C#(asp.net) 非物质文化遗产建档管理系统设-计算机毕业设计源码91695
    摘 要信息化社会内需要与之针对性的信息获取途径,但是途径的扩展基本上为人们所努力的方向,由于站在的角度存在偏差,人们经常能够获得不同类型信息,这也是技术最为难以攻克的课题。针对非物质文化遗产建档管理系统等问题,对非物质文化遗产建档管理系统进行研究分析,然后开发设计出......
  • 最新AI系统+ChatGPT网站H5源码+AI绘画系统,DALL-E3文生图,详细图文搭建教程/文档分析/识
    目录一、文章前言系统文档 二、系统演示三、系统功能模块3.1AI全模型支持/插件系统AI模型提问文档分析​识图理解能力3.2GPts应用3.2.1GPTs应用3.2.2GPTs工作台3.2.3自定义创建预设应用3.3AI专业绘画3.3.1文生图/图生图(垫图)3.3.2 局部编辑重绘3.3.3 ......
  • SpringCloudNetflix组件整合
    SpringCloudNetflix组件整合Eureka注册中心Eureka是什么Eureka是netflix的一个子模块,也是核心模块之一,Eureka是一个基于REST的服务,用于定位服务,以实现云端中间层服务发现和故障转移。服务注册与发现对于微服务架构来说是非常重要的,有了服务发现和注册,只需要使用服务的标......
  • 【K8s】专题五(1):Kubernetes 配置之 ConfigMap
    以下内容均来自个人笔记并重新梳理,如有错误欢迎指正!如果对您有帮助,烦请点赞、关注、转发!欢迎扫码关注个人公众号!目录一、基本介绍二、主要特性三、资源清单(示例)四、常用操作一、基本介绍在Kubernetes中,ConfigMap是一种用于存储非敏感信息的资源对象,提供了向Pod......
  • [SWPUCTF 2021 新生赛]简简单单的逻辑
    查看源代码,大概意思就是已知result反推flagflag='xxxxxxxxxxxxxxxxxx'list=[47,138,127,57,117,188,51,143,17,84,42,135,76,105,28,169,25]result=''foriinrange(len(list)):key=(list[i]>>4)+((list[i]&0xf)<<......
  • springboot3项目的搭建四.3(security登录认证配置)
    security的jwt验证:总体来说,我们加入依赖项,security就已经开始生效了,但是使用的默认的UserDetails和UserDetailsService,一、我们只要继承UserDetailsService,在数据库中查询用户和权限列表,封装成UserDetails的实现类,返回就可以实现,security验证的接管,最多在security配置类中,放行......
  • KC81710H 电池BMS AFE 规格书解读
    1.工作模式FullPower,NormalSleep,DeepSleep,ShutDownNormalSleep内部工作状态完全和FullPower模式一样,只是降低了autoscan的频率,DeepSleep在DeepSleep模式下,充放电MOS被强制关闭,ADC1和ADC2(取决sw_cc_md[1:0]的配置)和其它功能模块都被强制关闭,除了......
  • SAP 中的Incoterms国际贸易条款术语解释
    之前写代码建交货单的时候总是会遇到这个字段,通常我们可能会填FOB或者CIF或者其他,但并不清楚这些都是什么意思,偶然间看到一篇帖子对此作了解释,也记录分享一下。原文地址:Incoterms|FOB、CFR和CIF,到底采用哪种贸易术语比较安全?尽管Incoterms规则定义了十多种贸易术语,然而,多年......
  • 学习分享-Tomcat 的线程池在工作方式上与普通的 Java 线程池的区别
    前言最近在学习过程中遇到在某个场景下:修改某条数据时,给该线程上分布式写锁,然后引入延迟队列处理其他请求;这个方案有一定的缺点,因为在用到消息队列时,不存在占用过多线程从而导致OOM的问题,消费者组只会安排固定的几个线程去拉取消息,如果碰到上面那种拿不到锁的情况,阻塞等待......