当前位置: 首页 > 知识库问答 >
问题:

相当于dotnet core/csproj中的AssemblyInfo

蓟清野
2023-03-14

由于dotnet核心移回. csproj格式,有一个新的自动生成的MyProject。AssemblyInfo.cs,其中包含:

[assembly: AssemblyCompany("MyProject")]
[assembly: AssemblyVersion("1.0.0.0")]

请注意,这将在每次生成时自动重新生成。以前,该文件是在/obj/目录中找到的,现在它似乎只在内存中,因为在磁盘上找不到该文件,并且单击错误消息不会打开任何文件。

因为它们是在那里定义的,所以我不能自己在经典的AssemblyInfo中定义它们。cs

在哪里/如何定义公司和项目版本?

共有3个答案

蒋乐意
2023-03-14

我做以下为我的。NET Standard 2.0项目。

创建一个目录。建筑道具文件(例如,在回购的根目录中),并从移动要共享的属性。csproj文件复制到此文件。

MSBuild将自动拾取它并将其应用于自动生成的AssemblyInfo。cs

当使用dotnet pack或通过Visual Studio 2017中的UI构建一个nuget包时,它们也会应用到nuget包。

看见https://docs.microsoft.com/en-us/visualstudio/msbuild/customize-your-build

例子:

<Project>
    <PropertyGroup>
        <Company>Some company</Company>
        <Copyright>Copyright © 2020</Copyright>
        <AssemblyVersion>1.0.0.1</AssemblyVersion>
        <FileVersion>1.0.0.1</FileVersion>
        <Version>1.0.0.1</Version>
        <!-- ... -->
    </PropertyGroup>
</Project>
胥和悌
2023-03-14

这些设置已被移动到中。csproj文件

默认情况下,它们不会显示,但您可以在项目属性Package选项卡中从Visual Studio 2017中发现它们。

一旦保存这些值可以在MyProject.csproj中找到

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>net461</TargetFramework>
    <Version>1.2.3.4</Version>
    <Authors>Author 1</Authors>
    <Company>Company XYZ</Company>
    <Product>Product 2</Product>
    <PackageId>MyApp</PackageId>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
    <FileVersion>3.0.0.0</FileVersion>
    <NeutralLanguage>en</NeutralLanguage>
    <Description>Description here</Description>
    <Copyright>Copyright</Copyright>
    <PackageLicenseUrl>License URL</PackageLicenseUrl>
    <PackageProjectUrl>Project URL</PackageProjectUrl>
    <PackageIconUrl>Icon URL</PackageIconUrl>
    <RepositoryUrl>Repo URL</RepositoryUrl>
    <RepositoryType>Repo type</RepositoryType>
    <PackageTags>Tags</PackageTags>
    <PackageReleaseNotes>Release</PackageReleaseNotes>
  </PropertyGroup>

在文件浏览器属性信息选项卡中,FileVersion显示为“文件版本”,而Version显示为“产品版本”

胡俊贤
2023-03-14

正如您已经注意到的,您可以在中控制这些设置的大部分。csproj。

如果你想把这些保存在AssemblyInfo中。cs,可以关闭自动生成的部件属性。

<PropertyGroup>
   <GenerateAssemblyInfo>false</GenerateAssemblyInfo>
</PropertyGroup> 

如果你想看看引擎盖下发生了什么,请查看Microsoft。网生成SemblyInfo。微软内部的目标。网Sdk。

 类似资料:
  • 问题内容: 我的任务是为开源应用程序编写身份验证组件。我们有一个使用的内部身份验证小部件。我有一些例子访问的代码,它使用来办理过户。 我的问题是,是否有to 的端口,或者更好的是,什么基本软件包将使我足够接近以处理任务? 更新 : 简而言之,我想在JAVA中复制的代码: 我认为您的目标是正确的,我认为我最终将使用HttpsURLConnection,然后从响应中选择所需的内容。 问题答案: 省略异

  • 问题内容: 我希望使用来自Node.js的HTTP请求中的信息(即调用远程Web服务并将响应回显到客户端)。 在PHP中,我会使用cURL来做到这一点。Node的最佳做法是什么? 问题答案: 有关完整示例,请参见HTTP模块的文档: https://nodejs.org/api/http.html#http_http_request_options_callback

  • 问题内容: 我正在自学python 2.7。我在使用具有GOTO语句的BATCH方面有一些经验。我该如何在python中做到这一点?例如,假设我想从第5行跳到第18行。 我意识到以前有关于此主题的问题,但是我发现它们没有足够的信息,或者对于我目前的理解而言,在python中的水平太高了。 问题答案: s在计算机科学和编程中普遍受到指责,因为它们会导致非常非结构化的代码。 Python(像当今几乎所

  • 问题内容: 我在Visual Basic中有一个加密的字符串。NET 2008,加密和解密的功能如下: 例如,使用此功能加密的单词“ android”会给我结果“ B3xogi / Qfsc =“ 现在我需要使用相同的密钥“ key12345”从java解密字符串“ B3xogi / Qfsc =“,其结果应为“ android” …任何人都知道该怎么做? 提前致谢。 问题答案: 使用Apache

  • 问题内容: 在Jackson中,您可以通过在类级别进行注释来忽略属性,而不在JSON中的属性不会在Java类中进行序列化/反序列化。如果我们使用GSON,那相当于什么? 问题答案: 您可以使用使用GSON 注释获得类似的效果。 例如 如果与上述类一起使用,则和方法将完全忽略密码字段,因为它没有注释。 (请注意,在这里您还可以获得更细粒度的控制,因为您还可以控制GSON是否对字段进行序列化/反序列化

  • 在Java8中,Scala伟大的的等价物是什么? 我很想知道它是,但是reduce必须返回与它所还原的内容类型相同的内容。 例子: 上面代码中的问题是umulator: 因此,有人能给我指出与“foldLeft/修复我的代码”对应的正确方法吗?