小编Ger*_*ald的帖子

如何打破嵌套的foreach循环然后转到c#上的父foreach循环

我有以下代码:

foreach(// Some condition here)
{
    while (// Some condition here)
    {
        foreach (// Some condition here)
        {
             if (// Condition again)
             {
                  //Do some code
             }
             if (// Condition again)
             {
                 //Stop the first foreach then go back to first foreach
             }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我想要做的是当我if在最后一个foreach循环中点击第二个语句时返回第一个foreach循环.

注意:如果第二个if语句不为真,它应该继续最后一个foreach循环,直到条件不为真.

提前致谢!

c# foreach loops if-statement while-loop

22
推荐指数
4
解决办法
2万
查看次数

单元测试项目的相对路径c#

我有一个具有控制台应用程序和单元测试的解决方案.

var target = new Validator();
var targetFile = @"C:\Folder\SubFolder\AnotherSubFolder\Development\DEV\src\UnitTest\TargetFolder\file.xml";

bool actual = target.Validate(targetFile);
Assert.AreEqual(true, actual);
Run Code Online (Sandbox Code Playgroud)

Validator位于控制台应用程序项目中,而我的file.xml位于单元测试项目内的文件夹中.

这个单元测试正在通过,但是我想确保当我将其签入到我的tfs或构建服务器时,它仍然可以找到我的targetFile.

我怎么改变targetFile的路径?

提前致谢!

c# tfs unit-testing

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

使用c#获取Changeset及其在TFS上的所有更改

我试图通过它的变化获得特定的变更集.这是工作.问题是我无法获取受该变更集影响的文件.

Changeset changeset = GetChangeset(new Uri("tfs path"), 10918);

foreach (var w in changeset.Changes)
{
    Console.WriteLine("Type:" + w.ChangeType);
    Console.WriteLine("Comment:" + changeset.Comment);
    Console.WriteLine("Date:" + changeset.CreationDate);

    foreach (var y in changeset.WorkItems)
    {
        Console.WriteLine("Name:" + y.Title + y.Type);
    }
}

private static Changeset GetChangeset(Uri serveruri, int changesetid)
{
    var tfs = new TfsTeamProjectCollection(serveruri);
    var svc = tfs.GetService<VersionControlServer>();
    var changeset = svc.GetChangeset(changesetid);

    return changeset;
}
Run Code Online (Sandbox Code Playgroud)

上面的代码正在运行.我可以得到变更为对象并显示ChangeType,CreationDateComment,但我不能获得与变化相关的项目.例如,我编辑了Program.cs.所以它应该在变更集下可见.

任何建议都会很高兴.

谢谢!

c# tfs

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

正则表达式不允许某些特殊字符

我有以下正则表达式,不允许某些特殊字符:

if (testString.match(/[`~,.<>;':"\/\[\]\|{}()-=_+]/)){    
    alert("password not valid");
}
else
{
    alert("password valid");
}
Run Code Online (Sandbox Code Playgroud)

这很有效.如果密码不包含括号内的任何特殊字符,则此正则表达式将接受密码(~,.<>;':"\/\[\]\|{}()-=_+).

我的问题是它也不允许我输入奇怪的数字.

我错过了什么?提前致谢!

这是一个示例:

的jsfiddle

javascript regex

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

接受负数的正则表达式

我有下面这个正则表达式:

^([0-9]+,)*[0-9]+$
Run Code Online (Sandbox Code Playgroud)

这将验证用户的输入仅接受以逗号分隔或短划线分隔的正数或负数。

123,123,10
10,10
25
-25,10
Run Code Online (Sandbox Code Playgroud)

我上面的正则表达式仅适用于正数和逗号分隔符。如何修改它以使用破折号(10-25-30)和负数?

regex

2
推荐指数
1
解决办法
6378
查看次数

通过regex验证c#中的文件名

我想用这种格式验证文件名:LetterNumber_Enrollment_YYYYMMDD_HHMM.xml

string filename = "Try123_Enrollment_20130102_1200.xml";
Regex pattern = new Regex(@"[a-zA-z]_Enrollment_[0-9]{6}_[0-9]{4}\\.xml");
if (pattern.IsMatch(filename))
{
return isValid = true;
}
Run Code Online (Sandbox Code Playgroud)

但是,我无法让它发挥作用.

我错过了什么?

c# regex

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

Javascript函数无法触发onclick

我有以下代码:

<script type="text/javascript">
$(document).ready(function AjaxPost() {
 alert('asd');
});
</script>

<body>
<input name="btnUpdateUser" value="Update" id="btnUpdateUser" type="button" onclick="AjaxPost()" />
</body>
Run Code Online (Sandbox Code Playgroud)

我的问题不起作用.在这里查看实时示例:CodePen

但是,当我将onclick更改为:

<input name="btnUpdateUser" value="Update" id="btnUpdateUser" type="button" onclick="javascript:alert('asd');" />
Run Code Online (Sandbox Code Playgroud)

它显示警报.我在这里错过了什么?谢谢!

javascript jquery

0
推荐指数
1
解决办法
95
查看次数

标签 统计

c# ×4

regex ×3

javascript ×2

tfs ×2

foreach ×1

if-statement ×1

jquery ×1

loops ×1

unit-testing ×1

while-loop ×1