小编Ash*_*hby的帖子

从msbuild批处理目录属性中删除尾部反斜杠

我正在尝试在msbuild脚本中使用exec任务来工作,并且发现了一个非常烦人的问题.exec命令很好,只是我正在运行的进程(Ncover.Console.exe)无法处理目录名末尾的反斜杠.

为了说明一个剪切示例,以下工作:

<exec command="NCover.Console.exe nunit-console.exe some.dll [snip] //w c:\out" />
Run Code Online (Sandbox Code Playgroud)

但这失败了(请注意"c:\ out"末尾的斜线):

<exec command="NCover.Console.exe nunit-console.exe some.dll [snip] //w c:\out\" />
Run Code Online (Sandbox Code Playgroud)

我不能简单地删除尾部反斜杠的原因是使用批处理读取值.所以在与上面相同的剪辑中,它实际上看起来像这样:

<exec command="NCover.Console.exe nunit-console.exe some.dll [snip] //w 
&quot;%(TestAssemblies.RootDir)%(TestAssemblies.Directory)&quot; />
Run Code Online (Sandbox Code Playgroud)

所以我的问题是如何删除这个讨厌的尾随反斜杠?

提前致谢.

msbuild

12
推荐指数
1
解决办法
4875
查看次数

指南 - 扩展方法与部分类

我们正在讨论为工作定义实体类方法的最佳方法 - 作为扩展方法或使用部分类.我们谈论的那种方法不会修改实体的状态,它们纯粹是"帮助"方法,它们询问状态并返回一个值.

这两种方法的主要好处是保持实体类清洁,同时仍然为客户端代码提供intellisense支持.

无论是哪种方式,我都没有强烈的偏好,但我很想知道其他人是否对某一方有偏好(或知道有记录的指导方针).

我开始编写我能想到的每种方法的优点列表,但最后我想出的是:

部分类

  • 方法定义位于类中(即使它是另一个文件),因此Visual Studio工具支持"查找方法"(例如,resharper中的ALT- \)将定位方法

  • 一旦由于使用partial关键字打开实体类,包含辅助方法的其他文件的存在就很明显

扩展方法

  • 文件的命名("entityNameExtension")及其在项目中的位置(在"Extensions"子文件夹中)直观且易于搜索

其他人可以加入他们的意见吗?

PS我不认为这是以下问题的重复,因为该问题的提问者满足于标记一个响应,该响应将功能差异概述为正确答案,而不回答关于哪种方法是最佳实践的问题在这种情况下: 部分类与扩展方法

编辑 - 我正在寻求人们对一种方法或另一种方法的偏好,因为我们无法找到针对此特定方案的文档指南.这两种方法都是可能的,既不违反任何设计原则,所以这是一个偏好的问题,我想知道你的.

c# extension-methods partial-classes

4
推荐指数
1
解决办法
1740
查看次数

标签 统计

c# ×1

extension-methods ×1

msbuild ×1

partial-classes ×1