我正在使用Team Foundation Build,但我们尚未使用TFS进行问题跟踪,因此我想在失败的构建中禁用工作项创建.有没有办法做到这一点?我尝试在TFSBuild.proj文件中注释掉构建类型的工作项信息但是没有做到这一点.
我想基于我在Visual Studio中添加的自定义解决方案配置来启用/禁用某些代码.如何在运行时检查此值?
我是TFS的忠实粉丝,但不幸的是,他们似乎已经省略了任何一种链接到单个项目的方法(无论是工作项,文档还是受版本控制的文件). 此博客文章讨论使用TSWA Power Tools直接链接到事物(这对于构建链接通知电子邮件很有用),但这还不够,因为我需要任何用户能够轻松复制/粘贴链接以发送给其他人.除了TSWA之外还有哪些前端可以提供良好的链接能力?
您如何"获取"Team Foundation Server上的内容,无论是需要审核的文档,需要输入的工作项还是使用TFS进行源代码管理的文件?当然每个人都不会传递5-6位ID?
我可以发誓我已经看到人们键入函数头然后按一些键组合来自动创建函数括号并将光标插入它们之间,如下所示:
void foo()_
Run Code Online (Sandbox Code Playgroud)
至
void foo()
{
_
}
Run Code Online (Sandbox Code Playgroud)
这是内置功能吗?
出于某种原因,我从来没有看到这样做.有没有理由呢?例如,我喜欢_blah用于私有变量,并且至少在Windows窗体控件中默认是私有成员变量,但是我不记得曾经看到它们以这种方式命名.在我在成员函数中的局部变量中创建/存储控制对象的情况下,具有一些视觉区别特别有用.
我正在尝试使用Mono加载位图并在Linux上打印但我得到一个例外.Mono是否支持在Linux上打印?代码/例外如下:
编辑:不再获得例外,但我仍然很好奇有什么样的支持.留下后代或其他东西的代码.
private void btnPrintTest_Click(object sender, EventArgs e)
{
_printDocTest.DefaultPageSettings.Landscape = true;
_printDocTest.DefaultPageSettings.Margins = new Margins(50,50,50,50);
_printDocTest.Print();
}
void _printDocTest_PrintPage(object sender, PrintPageEventArgs e)
{
var bmp = new Bitmap("test.bmp");
// Determine center of graph
var xCenter = e.MarginBounds.X + (e.MarginBounds.Width - bmp.Width) / 2;
var yCenter = e.MarginBounds.Y + (e.MarginBounds.Height - bmp.Height) / 2;
e.Graphics.DrawImage(bmp, xCenter, yCenter);
e.HasMorePages = false;
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用PowerShell和正则表达式递归重命名一堆TFS文件夹tf rename,但我遇到了PowerShell的一些问题,因为我没有花太多时间使用它.这是我已经把到目前为止更换领导有,但它不工作:52.3.2
dir | foreach { tf rename $_ { $_.Name -replace '^5', '2.3.2' } }
Run Code Online (Sandbox Code Playgroud)
实际结果:
Unrecognized command option 'encodedCommand'. Unrecognized command option 'encodedCommand'. Unrecognized command option 'encodedCommand'. Unrecognized command option 'encodedCommand'. ...etc.
更新:
相反,我做了以下几点:
dir | foreach { $newname = $_.Name -replace "^5", "2.3.2"; tf rename $_ $newname }
Run Code Online (Sandbox Code Playgroud)
我的下一个目标是使这个recurse子目录,但这似乎更具挑战性(改变它dir -recurse使它在父文件夹之后由于某种原因退出).
我目前正在评估TFSMSF for CMMI下的流程模板,以便在我的开发团队中使用,而且我无法理解单独的bug和变更请求工作项类型的需求.
我知道在生成报告时能够区分错误(错误)和更改请求(更改要求)是有益的.
但是,在我们当前的系统中,我们只有一种类型的更改请求,只需使用一个字段来指示它是否是错误,需求更改等(此字段可用于构建报告查询).
为bug提供单独的工作流程有什么好处?
我也对开发人员可以针对错误或更改请求提交工作这一事实感到困惑,我认为预期的工作流程是针对错误生成更改请求,这是开发人员在进行更改时引用的.
我有一些继承问题,因为我有一组相互关联的抽象类,需要全部重写以创建客户端实现.理想情况下,我想做类似以下的事情:
abstract class Animal
{
public Leg GetLeg() {...}
}
abstract class Leg { }
class Dog : Animal
{
public override DogLeg Leg() {...}
}
class DogLeg : Leg { }
Run Code Online (Sandbox Code Playgroud)
这将允许任何使用Dog类的人自动获取DogLegs以及任何使用Animal类获取Legs的人.问题是被覆盖的函数必须与基类具有相同的类型,因此不会编译.我不明白为什么它不应该,因为DogLeg可以隐式地施放到Leg.我知道有很多方法可以解决这个问题,但我更好奇为什么在C#中无法实现/实现这一点.
编辑:我有点修改,因为我实际上在我的代码中使用属性而不是函数.
编辑:我将其更改回函数,因为答案仅适用于那种情况(属性的set函数的value参数的协方差不应该起作用).对不起波动!我意识到这使得许多答案看起来无关紧要.
我发现.Net FileSystemWatcher类对于编写实用程序非常方便,这些实用程序会在文件显示在其监视文件夹中时自动生效.在*nix世界中是否有任何与此功能相同的功能可以让我观看文件夹(可能还有它的所有子目录)?
编辑:最好这将是不需要内核补丁的东西.
tfs ×4
c# ×3
.net ×2
linux ×2
oop ×2
cmmi ×1
coding-style ×1
covariance ×1
file-io ×1
inheritance ×1
lifecycle ×1
mono ×1
msbuild ×1
msf ×1
powershell ×1
printing ×1
tfsbuild ×1
workflow ×1