我们已经设置了CruiseControl.NET来持续集成我们的一些项目.
我们使用一个<cb:define>块来确保所有源代码控制操作都以相同的方式完成,并保持配置DRY.
我们偶尔会遇到一个问题导致构建显示"异常".消息如下:
ThoughtWorks.CruiseControl.Core.CruiseControlException: Source control operation has timed out.
at ThoughtWorks.CruiseControl.Core.Sourcecontrol.ProcessSourceControl.Execute(ProcessInfo processInfo)
at ThoughtWorks.CruiseControl.Core.Sourcecontrol.Svn.GetModifications(IIntegrationResult from, IIntegrationResult to)
at ThoughtWorks.CruiseControl.Core.Sourcecontrol.QuietPeriod.GetModifications(ISourceControl sourceControl, IIntegrationResult lastBuild, IIntegrationResult thisBuild)
at ThoughtWorks.CruiseControl.Core.IntegrationRunner.GetModifications(IIntegrationResult from, IIntegrationResult to)
at ThoughtWorks.CruiseControl.Core.IntegrationRunner.Integrate(IntegrationRequest request)
Run Code Online (Sandbox Code Playgroud)
常见的配置部分如下:
<sourcecontrol type="svn">
<trunkUrl>http://ourserver/svn/$(project-svn-path)/trunk/</trunkUrl>
<executable>C:\Program Files\CollabNet Subversion Server\csvn.exe</executable>
<username>user</username>
<password>password<password>
<revert>true</revert>
</sourcecontrol>
Run Code Online (Sandbox Code Playgroud)
如果可能的话,我想忽略这个特定的错误.
我需要做出哪些改变?
我正在为我编写的局域网方网站构建一个插件,允许使用Round Robin锦标赛.
一切进展顺利,但我有一些关于排名超过两个标准的最有效方法的问题.
基本上,我想要以下排名布局:
Rank Wins TotalScore
PersonE 1 5 50
PersonD 2 3.5 37
PersonA 2 3.5 37
PersonC 4 2.5 26
PersonB 5 2.5 24
PersonF 6 0 12
Run Code Online (Sandbox Code Playgroud)
在SQL服务器中,我会使用:
SELECT
[Person],
RANK() OVER (ORDER BY Wins DESC, TotalScore DESC) [Rank],
[Wins],
[TotalScore]
Run Code Online (Sandbox Code Playgroud)
现在,我只有List,Dictionary等可以使用
特别:
Dictionary<TournamentTeam, double> wins = new Dictionary<TournamentTeam, double>();
Dictionary<TournamentTeam, double> score = new Dictionary<TournamentTeam, double>();
Run Code Online (Sandbox Code Playgroud)
有没有办法用LINQ做这种排名风格?
如果没有,是否有一种可扩展的方式可以让我以后考虑Win-Loss-Draw而不仅仅是胜利,如果我选择的话?
编辑:
我改编了TheSoftwareJedi的答案:
private class RRWinRecord : IComparable
{
public int Wins { get; set; } …Run Code Online (Sandbox Code Playgroud) 在几个不同的场合,我试图从一个变量中哄骗声明的类型,相对远离它的声明,只是发现typeof(T)它只适用于类型名称.
我想知道是否会有任何突破性变化也允许typeof(variable).
例如,使用此代码:
class Animal { /* ... */ }
class Goat : Animal { /* ... */ }
/* ... */
var g = new Goat();
Animal a = g;
Console.WriteLine(typeof(Goat));
Console.WriteLine(typeof(Animal));
Console.WriteLine(g.GetType());
Console.WriteLine(a.GetType());
Run Code Online (Sandbox Code Playgroud)
你会得到类似的东西:
山羊
动物
山羊
山羊
为什么不可能这样做:
Console.WriteLine(typeof(g));
Console.WriteLine(typeof(a));
Run Code Online (Sandbox Code Playgroud)
山羊
动物
我粗略地看了一眼规格,发现没有任何冲突.我认为它会澄清"为什么这种类型?"的问题.使用typeof运营商时.
我知道编译器能够在这里.使用扩展方法的实现实际上是微不足道的:
public static Type TypeOf<T>(this T variable)
{
return typeof(T);
}
Run Code Online (Sandbox Code Playgroud)
但这感觉很脏,滥用编译器的类型推断.
我需要能够将内容类型"text/xml"发送到Firefox和Safari,以允许它们在我的一个页面中呈现内联SVG.
只要内容类型是"text/xml",这就有效.
但是,当IE点击页面时,如果内容类型不是"text/html",它会尝试呈现XML文档树,而不是页面的XHTML内容.
ASP.NET MVC中设置所有视图的HTTP Content-Type的"正确方法"是什么?
请记住,我将把视图渲染为ViewResults.
好的,要清除任何混淆:
User Agent Content-Type Desired
-----------------------------------
IE 5.5 text/html
IE 6 text/html
IE 7 text/html
IE 8 text/html
Firefox text/xml
Safari text/xml
Chrome text/xml
Run Code Online (Sandbox Code Playgroud)
等等.
列出的所有浏览器都以某种方式支持SVG内联.我有一致的传递格式,保存内容类型.
我有一个用vanilla ASP.NET编写的应用程序,我想将其移植到ASP.NET MVC.
然而,我对于坚持物体的正确位置感到困惑.我需要坚持几个原因:
通常,我会说#1将被保存为Globals.asax中的静态项目,可以使用Global.Repository或类似命中.
我通常会说#2应该是一个属性,在页面的基类中有一个会话支持存储.
现在我感到困惑的原因是我听说MVC中的会话发生了变化,而Global.asax不再拥有相同的类.此外,页面的概念已被删除,因此向控制器的基类添加属性似乎是错误的.
什么说yall?
以下代码在前置条件下失败.这是代码合同中的错误吗?
static class Program
{
static void Main()
{
foreach (var s in Test(3))
{
Console.WriteLine(s);
}
}
static IEnumerable<int>Test (int i)
{
Contract.Requires(i > 0);
for (int j = 0; j < i; j++)
yield return j;
}
}
Run Code Online (Sandbox Code Playgroud) 我目前在ASP.NET MVC应用程序中使用Microsoft Code Contracts没有任何问题,但我似乎无法在基本的ASP.NET网站上运行它.我不完全确定它是用于这种类型的项目(虽然它应该没关系)所以我想把它带给每个人.
我可以很好地编译合同,但代码跳过它们,因为我假设它没有通过属性页面启用,就像你在其他项目类型(即ASP.NET MVC)中那样.我已经进入了我的ASP.NET网站中的项目的属性页面(它显示了一个对话框,而不是典型的属性页面),但它没有产生相同的菜单选项,因此,没有专门的部分编码合同.
此外,我在类库项目中正确启用了Microsoft Code Contracts,我将其用于将业务逻辑与Web站点分离.合同编译正常,但是当合同被违反时,它会抛出一个"Exception of type 'System.ExecutionEngineException' was thrown"没有内部异常的无法提供的错误.我的合同指定了一条在违规时显示的消息,但它不在异常范围内.它只是暂停了进程的执行(我认为这是Microsoft Code Contracts的默认功能).
我找不到任何明确说明特定项目类型可以或不可以(或不应该)与合同一起使用的地方,所以我只是想知道是否有人遇到过这个问题.
谢谢你的帮助!
我想制作一些简单的文件恢复软件,我想尝试通过按Shift + Delete来恢复碰巧已删除的文件.我在Windows工作,任何人都可以向我显示任何可以帮助我以编程方式执行此操作的链接或文档吗?我知道C,C++,.NET.有什么指针吗?