相关疑难解决方法(0)

如何在构建时将其他文件包含在C#的输出目录中?

我有一些库文件需要我的应用程序工作.
我的应用程序包含设置和部署.

我已经知道,为了在安装时将库文件添加到应用程序的输出目录中,我只需要在构建之前引用.NET IDE中的那些库...唯一的问题是这些库不能引用...所以我需要能够将这些库复制到我的应用程序的安装目录...目前,我正在手动复制这些库...

附录

我也尝试将这些库文件作为现有项添加到我的项目中,并标记每个库文件' 复制到输出目录复制,如果它们的属性更新但仍然没有得到我想要的解决方案.

更新1

谢谢你帮助我帮助我解决问题,我设法让你发布的解决方案工作除了一个... @Matthew Watson的帖子..我甚至设法找到了解决方案,所以我想和你分享它.

继承人我做了什么:

1. I opened the setup and deployment project in my application.  
2. Under the Application Folder Tree, on it's right side, I right clicked..  
3. then clicked Add..  
4. then clicked File  
5. and then browsed for the files I wanted to add to the installation directory  
6. and click open.  
Run Code Online (Sandbox Code Playgroud)

但出于好奇......我仍在努力让@Matthew Watson发布工作......希望你能帮助我这一个人.提前致谢

更新2

我昨天忘了更新这篇文章,我已经设法让Matthew Watson的解决方案昨天工作了.再次感谢您的帮助.

.net c# installation

45
推荐指数
1
解决办法
8万
查看次数

重复“System.Reflection.AssemblyInformationalVersionAttribute”属性

我正在尝试深入研究 ASP.NET Core。因此,我决定尝试使用 VS Code 创建一个宠物项目。

在 dotnet cmd 的帮助下,我创建了一个解决方案,向其中添加了项目(应用程序、测试、EF、映射等)并在项目之间设置引用。

但现在,当我尝试运行该解决方案时,我收到了Duplicate 'System.Reflection.AssemblyInformationalVersionAttribute' attribute错误和一堆其他奇怪的错误。这是我收到的错误的一部分:

c:\Projects\dotNet\BestTongue\Utilities\objBinRemove\obj\Debug\netcoreapp3.0\objBinRemove.AssemblyInfo.cs(10,12): error CS0579: Duplicate 'System.Reflection.AssemblyCompanyAttribute' attribute [C:\Projects\dotNet\BestTongue\BestTongue.csproj]
c:\Projects\dotNet\BestTongue\Utilities\objBinRemove\obj\Debug\netcoreapp3.0\objBinRemove.AssemblyInfo.cs(11,12): error CS0579: Duplicate 'System.Reflection.AssemblyConfigurationAttribute' attribute [C:\Projects\dotNet\BestTongue\BestTongue.csproj]
...
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

在此输入图像描述

我不确定我还需要在问题中添加什么才能解决问题。因此,如果我遗漏了某些内容,请在评论中询问所有必要的详细信息。

我花了很多时间试图找到问题的解决方案,但徒劳无功。

更新

正如评论部分所建议的那样,我尝试使用相关问题中提到的解决方案。

我尝试添加:

<GenerateAssemblyConfigurationAttribute>false</GenerateAssemblyConfigurationAttribute> <GenerateAssemblyDescriptionAttribute>false</GenerateAssemblyDescriptionAttribute> <GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute> <GenerateAssemblyTitleAttribute>false</GenerateAssemblyTitleAttribute>

所以,现在我的.csproj样子是这样的:

<Project Sdk="Microsoft.NET.Sdk">

  <ItemGroup>
    <ProjectReference Include="..\App\App.csproj" />
    <ProjectReference Include="..\Data\Data.csproj" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.Mvc" Version="2.2.0" />
  </ItemGroup>

  <PropertyGroup>
    <TargetFramework>netstandard3.0</TargetFramework>
    <GenerateAssemblyConfigurationAttribute>false</GenerateAssemblyConfigurationAttribute>
    <GenerateAssemblyDescriptionAttribute>false</GenerateAssemblyDescriptionAttribute>
    <GenerateAssemblyProductAttribute>false</GenerateAssemblyProductAttribute>
    <GenerateAssemblyTitleAttribute>false</GenerateAssemblyTitleAttribute>
  </PropertyGroup>

</Project>
Run Code Online (Sandbox Code Playgroud)

但我仍然看到同样的错误:

在此输入图像描述

另外,我编写了一个脚本来遍历所有项目并删除*.AssemblyInfo.cs. 之后我检查了建设项目是否会带回来*.AssemblyInfo.cs。并且*.AssemblyInfo.cs在构建后再次出现。另外,现在(.csproj文件修改后)我收到了一个新错误:

C:\Program …

.net-core visual-studio-code asp.net-core

11
推荐指数
1
解决办法
1万
查看次数

在构建时注入程序集版本号

我想在构建时更改C#项目的程序集版本号,方法是将其作为MSBuild命令行上的属性传递.

AssemblyInfo任务将在编译之前修改AssemblyInfo.cs中的程序集版本.这几乎是我想要的.问题是我不希望因源控制问题而更改AssemblyInfo.cs.我不希望所有这些AssemplyInfo.cs文件显示为被修改,并且每次我们进行构建时都需要检查.

我想要的是在编译后更改程序集版本号的"事物" - 可能使用post build weaving任务.这样的"事物"是否已经作为开源或零售产品存在?如果没有,有人可以指向我编写post build weaver任务的文档吗?

.net versioning msbuild assemblies msbuild-task

6
推荐指数
1
解决办法
1万
查看次数