标签: csproj

什么是csproj文件中的"服务包含"?

在C#解决方案中,我添加了一个现有项目.
之后,Visual Studio在其他.csproj文件中添加了以下条目:

<ItemGroup>
    <Service Include="{B4F97281-0DBD-4835-9ED8-7DFB966E87FF}" />
</ItemGroup>
Run Code Online (Sandbox Code Playgroud)

这是用来干嘛的?
我可以删除它吗?

c# csproj visual-studio visual-studio-2013

192
推荐指数
3
解决办法
3万
查看次数

<子类型>设计器</ Subtype>添加然后由Visual Studio在加载/卸载时删除

有谁看过这个吗?我有一个大型的Visual Studio项目,在项目的下一次打开和关闭时不断添加[Subtype]Designer[/Subtype]到我的项目中.vcproj然后删除它.只定义了一个类StoredImageControl.cs.任何人都知道如何关闭它,因为它实际上搞乱了我的版本控制.

这是在之前:

<EmbeddedResource Include="StoredImageControl.resx">
  <DependentUpon>StoredImageControl.cs</DependentUpon>
</EmbeddedResource>
Run Code Online (Sandbox Code Playgroud)

这是在之后

<EmbeddedResource Include="StoredImageControl.resx">
  <DependentUpon>StoredImageControl.cs</DependentUpon>
  <SubType>Designer</SubType>
</EmbeddedResource>
Run Code Online (Sandbox Code Playgroud)

designer csproj subtype visual-studio

171
推荐指数
5
解决办法
4万
查看次数

126
推荐指数
5
解决办法
5万
查看次数

有没有办法自动将内容文件包含到asp.net项目文件中?

我经常在我的ASP.NET项目中添加很多内容文件(主要是图像和js).我正在使用VS发布系统,在发布之前,新文件在我将它们包含在项目中之前不会发布.我想自动包含指定目录中的所有文件.有没有办法指定哪些目录应该自动包含在csproj文件中或其他地方?

asp.net msbuild csproj

78
推荐指数
4
解决办法
5万
查看次数

如何使用csproj多目标.NET Core类库?

当.NET Core仍然使用该project.json格式时,您可以构建一个针对多个框架的类库(例如net451,netcoreapp1.0).

既然官方项目格式正在csproj使用MSBuild,那么如何指定要定位的多个框架?我试图寻找这个在VS2017的项目设置,但我能只针对从.NET框架的核心在单一框架(它甚至没有列出我的其他完整的.NET框架版本已经安装) :

在此输入图像描述

c# msbuild csproj .net-core visual-studio-2017

78
推荐指数
4
解决办法
3万
查看次数

如何让.NET Core项目复制NuGet引用来构建输出?

我正在尝试使用.NET Core编写一个插件系统,我的一个要求是能够将插件DLL及其依赖项分发给用户进行安装.但是,我无法弄清楚如何将我的NuGet依赖项包含为构建工件并将它们输出到构建文件夹,而不必将其dotnet publish用作hack.有什么方法可以在csproj中指定它吗?

c# msbuild csproj nuget .net-core

78
推荐指数
5
解决办法
4万
查看次数

文件可以嵌套在VS2017解决方案资源管理器中用于.NET Core(非ASP.NET核心)项目吗?

在"旧学校"MSBuild项目中 - 例如仍然在VS2017中的Windows窗体中使用 - 文件可以通过DependentUponcsproj文件中的项目"嵌套" .

我用它来在Noda Time中将单元测试组合在一起,例如

<Compile Include="LocalDateTest.PeriodArithmetic.cs">
  <DependentUpon>LocalDateTest.cs</DependentUpon>
</Compile>
Run Code Online (Sandbox Code Playgroud)

这导致了易于导航的测试:

嵌套测试

转向project.json.NET Core时,我故意"丢失"此功能,但希望在转换为MSBuild时会返回.但是,看起来基于.NET Core SDK(根元素<Project Sdk="Microsoft.NET.Sdk">)的MSBuild项目在Visual Studio 2017中得不到相同的处理,即使ItemGroup手动添加与"旧学校"项目相同的元素.

ASP.NET Core项目为缩小的CSS和Javascript接收自动嵌套,但目前尚不清楚如何将其应用于.NET Core库项目中的C#.

msbuild csproj .net-core visual-studio-2017

74
推荐指数
3
解决办法
6844
查看次数

将.csproj中的内容文件包含在项目锥体之外

我有一个C#项目说MyProject.csproj位于"C:\ Projects\MyProject \".我也有我想复制到这个项目的输出目录中的文件.但是,文件位于"C:\ MyContentFiles"位置,即它们不在项目锥内.该目录也有子目录.目录的内容不受管理.因此,我必须包括其下的所有内容.

当我在项目中将它们包含为"内容"时,它们会被复制,但目录结构会丢失.我做了这样的事情: -

<Content Include="..\..\MyContentFiles\**">
  <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
Run Code Online (Sandbox Code Playgroud)

如何将这些文件/目录递归复制到项目的输出目录中并保留目录结构?

msbuild csproj

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

什么是NuGetPackageImportStamp?

将某些NuGet包添加到项目时,有时会在.csproj文件的第一个属性组中显示一个奇怪的项.

<PropertyGroup>
  ...
  <NuGetPackageImportStamp>3d051ef3</NuGetPackageImportStamp>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)

邮票每次都不同,并且看起来不是连续的.

<NuGetPackageImportStamp>在NuGet文档中找不到任何引用.它是什么,它是如何工作的?有必要吗?

一个似乎每次添加这个的包是StyleCop.MSBuild,至少使用当前的4.7.49版本.只需将该包添加到新项目中,您就会看到这个神秘项目出现在您的项目文件中.

.net msbuild csproj nuget

68
推荐指数
1
解决办法
9805
查看次数

dotnet cli和新的vs2017 msbuild之间的关系

随着从VS2017引入project.json的新csproj格式的转变,我正在努力理解dotnetcli和new 之间的区别msbuild以及何时使用另一个.

1)要csproj从命令行构建新的netstandard库,我应该调用dotnetcli(例如dotnet restore dotnet build)还是使用msbuild(例如msbuild ExampleNetstandard.sln).

2)另外,我的理解是有两个版本msbuild,一个基于完整框架,另一个基于目标dotnet core.它是否正确?我应该经常使用dotnet version

3)是dotnet cli独立还是需要msbuild安装?例如,当您安装dotnet SDK时,这也安装了msbuild吗?如果是这样与vs2017安装的版本不同?

msbuild csproj dotnet-cli visual-studio-2017

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