当前位置: 首页 > news >正文

企业网站管理系统模版源码包装设计制作流程有哪些

企业网站管理系统模版源码,包装设计制作流程有哪些,网上怎么样挣钱,深圳市建设厅运行时获取类库信息Intro在我们向别的开源项目提 issue 的时候#xff0c;可能经常会遇到别人会让我们提供使用的版本信息#xff0c;如果别的开源项目类库集成了 source link#xff0c;我们可以从程序集信息中获取到版本以及对应的 commit 信息#xff0c;这样我们就可以…运行时获取类库信息Intro在我们向别的开源项目提 issue 的时候可能经常会遇到别人会让我们提供使用的版本信息如果别的开源项目类库集成了 source link我们可以从程序集信息中获取到版本以及对应的 commit 信息这样我们就可以直接找到对应版本的 commit 对应的代码版本这样也就可以更加方便的了解对应源码了那我们是不是也可以在运行时获取类库的 commit 信息呢答案是肯定的Sample我们集成了 source link 的话在程序集信息中是可以获取到 git 相关的信息 source link 的单步调试也是基于此来扩展的调试时下载对应源文件的这里是我集成了 source link 的一个开源项目反编译 dll 的时候可以看到一些 git 相关的信息AssemblyInfomationVersion 中的信息由两部分组成一部分是原始的 package 版本号另外一部分是对应 commit hash我们结合 RepositoryUrl 就可以很方便的找到对应的代码了RepositoryUrl 则是在一个 AssemblyMetadata 的 attribute 中Implement我们可以定义一个 model 来表示程序集的信息这样以后扩展起来也会更加的方便示例如下public class LibraryInfo {public required Version LibraryVersion { get; init; }public required string LibraryHash { get; init; }public required string RepositoryUrl { get; init; } }然后通过反射从程序集中获取程序集的信息public static LibraryInfo GetLibraryInfo(Assembly assembly) {Guard.NotNull(assembly);var assemblyInformation  assembly.GetCustomAttributeAssemblyInformationalVersionAttribute();var repositoryUrl  assembly.GetCustomAttributesAssemblyMetadataAttribute().FirstOrDefault(x  nameof(LibraryInfo.RepositoryUrl).Equals(x.Key))?.Value ?? string.Empty;if (assemblyInformation is not null){var informationalVersionSplit  assemblyInformation.InformationalVersion.Split();if (Version.TryParse(informationalVersionSplit[0], out var version)){return new LibraryInfo(){LibraryVersion  version,LibraryHash  informationalVersionSplit.Length  1 ? informationalVersionSplit[1] : string.Empty,RepositoryUrl  repositoryUrl};}}return new LibraryInfo(){LibraryVersion  assembly.GetName().Version!,LibraryHash  string.Empty,RepositoryUrl  repositoryUrl}; }为了使用方便添加一个根据类型获取的 overloadpublic static LibraryInfo GetLibraryInfo(Type type)  GetLibraryInfo(Guard.NotNull(type).Assembly);More使用 dotnet-exec  来测试一下dotnet-exec ApplicationHelper.GetLibraryInfo(typeof(WeihanLi.Npoi.CsvHelper)) --reference nuget:WeihanLi.Npoi,2.4.2从输出结果我们可以看到我们已经拿到 commit hash 和 RepositoryUrl 信息了对应的 Github commit 地址就是https://github.com/WeihanLi/WeihanLi.Npoi/tree/8e2c1dee6efee9b7b4b12f16272f266c9ad09233最后还是建议大家在自己开源类库项目中集成 source link不仅方便调试还可以比较方便准确的获取对应版本的 commit 信息这样别人使用遇到问题的话也会比较方便的进行 debug 和查找源代码Referenceshttps://github.com/dotnet/sourcelinkhttps://github.com/WeihanLi/WeihanLi.Common/blob/1.0.58/src/WeihanLi.Common/Helpers/ApplicationHelper.cs
http://www.zqtcl.cn/news/204782/

相关文章:

  • 园区门户网站建设方案著名网站用什么语言做后台
  • 有经验的邵阳网站建设四川省城乡建设网查询
  • 网站打不开怎么做天猫店购买交易平台
  • 什么专业是做网站做网站设分辨率
  • 供水开发建设公司网站建筑案例网站有哪些
  • 建站平台备案wordpress 论坛
  • 朗域装饰公司电话中卫网站推广优化
  • 公司用dw做网站吗做外贸翻译用那个网站
  • 希尔顿酒店网站建设的优点网站建设添加汉语
  • 贵阳利于优化的网站wordpress模糊搜索插件
  • 河南做网站最好的公司门户网站制度建设
  • 新余 网站建设公司浏览不良网页的危害
  • 长春做网站哪里好西安有什么网页设计公司
  • 昆明网站建设精英免费自己建网页
  • 网站开发框架 开源买的有域名怎么做网站
  • 为什么做电商网站成都在哪建设网站
  • 有没有做请帖的网站南漳网站制作
  • 项目信息网站哪个好企业开展网络营销方案
  • 网站开发制作费入会计科目做毕业设计个人网站任务书
  • 自己建一个网站微信指数官网
  • 产品推广网站模板哪里有做网站的素材
  • 网站界面要素村网站开设两学一做栏目
  • 临沂免费模板建站河北邢台手机网站建设
  • 企业网站栏目规划的重要性wordpress改变为中文
  • 云服务器怎么上传网站个人建一个网站多少钱
  • 东莞网站建设包装制品flash网站制作
  • 办网站怎么赚钱做二手电脑的网站
  • 大型电子商务网站建设成本旅游网站前台怎么做
  • 深圳网站建设..网站点击图片放大
  • 上海企业扶持政策洛阳400电话洛阳网站seo