我正在尝试在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
"%(TestAssemblies.RootDir)%(TestAssemblies.Directory)" />
Run Code Online (Sandbox Code Playgroud)
所以我的问题是如何删除这个讨厌的尾随反斜杠?
提前致谢.
我们正在讨论为工作定义实体类方法的最佳方法 - 作为扩展方法或使用部分类.我们谈论的那种方法不会修改实体的状态,它们纯粹是"帮助"方法,它们询问状态并返回一个值.
这两种方法的主要好处是保持实体类清洁,同时仍然为客户端代码提供intellisense支持.
无论是哪种方式,我都没有强烈的偏好,但我很想知道其他人是否对某一方有偏好(或知道有记录的指导方针).
我开始编写我能想到的每种方法的优点列表,但最后我想出的是:
部分类
方法定义位于类中(即使它是另一个文件),因此Visual Studio工具支持"查找方法"(例如,resharper中的ALT- \)将定位方法
一旦由于使用partial关键字打开实体类,包含辅助方法的其他文件的存在就很明显
扩展方法
其他人可以加入他们的意见吗?
PS我不认为这是以下问题的重复,因为该问题的提问者满足于标记一个响应,该响应将功能差异概述为正确答案,而不回答关于哪种方法是最佳实践的问题在这种情况下: 部分类与扩展方法
编辑 - 我正在寻求人们对一种方法或另一种方法的偏好,因为我们无法找到针对此特定方案的文档指南.这两种方法都是可能的,既不违反任何设计原则,所以这是一个偏好的问题,我想知道你的.