默认情况下,nunit测试按字母顺序运行.有谁知道设置执行顺序的方法?这个属性是否存在?
我有一个字符串"-123445".是否可以从字符串中删除" - "字符?
我尝试了以下但无济于事:
$mylabel.text("-123456");
$mylabel.text().replace('-', '');
Run Code Online (Sandbox Code Playgroud) 我有2个清单:
myObject object1 = new myObject(id = 1, title = "object1"};
myObject object2 = new myObject(id = 2, title = "object2"};
myObject object3 = new myObject(id = 3, title = "object3"};
//List 1
List<myObject> myObjectList = new List<myObject>{object1, object2, object3};
//List 2
List<int> idList = new List<int>{2, 3};
Run Code Online (Sandbox Code Playgroud)
有没有办法使用Linq只拉取第二个列表中存在的第一个列表中的对象,以便我留下:
{object2, object3}
Run Code Online (Sandbox Code Playgroud)
我看着相交,但似乎这只有两个列表属于同一类型时才有效.
任何帮助将不胜感激.
谢谢.
在加载网页之前,我正在检测浏览器和版本以确定兼容性.
因此,如果浏览器小于IE7,则显示不兼容的消息.
在IE11中测试网页我的网页显示不兼容的消息.
我目前正在从以下位置获取浏览器名称:
var browser = Request.Browser.Browser;
Run Code Online (Sandbox Code Playgroud)
和版本
var version = Request.Browser.Version;
Run Code Online (Sandbox Code Playgroud)
然后我检查浏览器是IE,版本> = 7.
我相信IE11的用户代理已经改变了.那么使用C#检测浏览器是否> = IE7的最佳方法是什么?
编辑:
Request.Browser.Browser返回浏览器名称,例如IE.Request.Browser.Version返回版本号.我将这些添加到我拥有的BrowserVersion对象中,并将这些值与我支持的浏览器版本数组进行比较.即
private static List<BrowserVersion> m_supportedBrowsers = new List<BrowserVersion>()
{
new BrowserVersion("IE", 7),
new BrowserVersion("Firefox", 3),
new BrowserVersion("AppleMAC-Safari", 5),
new BrowserVersion("Safari", 5)
};
Run Code Online (Sandbox Code Playgroud)
其中BrowserVersion只是一个具有2个字符串属性(名称和版本)的对象.
我有一张像这样的桌子:
<table id="MyTable" cellspacing="0" cellpadding="0">
<thead>
<tr>
<th style="width: 30%;">
<asp:Literal ID="LitDescriptionTitle" runat="server" />
</th>
<th style="width: 30%;">
<asp:Literal ID="LitDescription2Title" runat="server" />
</th>
<th style="width: 30%;">
<asp:Literal ID="LitAddressTitle" runat="server" />
</th>
<th style="width: 10%;">
</th>
</tr>
</thead>
<tbody>
Run Code Online (Sandbox Code Playgroud)
现在列宽正确设置为IE中的百分比,但不是在Firefox中.(可能FF正确做事)
我可以做些什么来使列的宽度固定为IE和FF中的上述百分比?
我希望这不是一个愚蠢的问题,而是我一直在想的事情.我希望编写单元测试一个方法,其中包含一些逻辑来检查某些值是否为空.
public void MyMethod(string value1, string value2)
{
if(value1 != null)
{
//do something (throw exception)
}
if(value2 != null)
{
//do something (throw exception)
}
//rest of method
}
Run Code Online (Sandbox Code Playgroud)
我想通过将null值传递给方法来测试它.我的问题是我应该为每个参数创建一个单元测试,还是可以创建一个单元测试,检查如果我将value1设置为null然后检查如果我将value2设置为null会发生什么.
即
[TestMethod]
public void TestMyMethodShouldThrowExceptionIfValue1IsNull()
{
//test
}
[TestMethod]
public void TestMyMethodShouldThrowExceptionIfValue2IsNull()
{
//test
}
Run Code Online (Sandbox Code Playgroud)
要么
[TestMethod]
public void TestMyMethodWithNullValues()
{
//pass null for value1
//check
//pass null for value2
//check
}
Run Code Online (Sandbox Code Playgroud)
或者它有什么不同?我想我在某个地方读到你应该限制自己每单元测试一个断言.它是否正确?
在此先感谢Zaps
我有一个像这样的字符串:
mystring = "test1, 1, anotherstring, 5, yetanother, 400";
Run Code Online (Sandbox Code Playgroud)
myarray可以有不同的长度.我想做的是像这样拆分字符串:
{"test1, 1"}
{"anotherstring, 5}
{"yetanother, 400"}
Run Code Online (Sandbox Code Playgroud)
这可能吗?我尝试了,string[] newArray = mystring.Split(',')但是在每个逗号分开它,而不是我想做的第二个逗号.
谢谢你的帮助
跳越
我有一个方法,使用我需要传递给它的列表.
根据我调用此方法的位置,列表的类型不同.
是否可以将列表作为通用列表传递,然后将其转换为某种类型,或者我是否需要为可以使用的每种类型的列表创建参数(见下文)?
public string MyMethod(List<Type1> list1, List<Type2> list2, ...etc )
{
switch(someCondition)
{
case 1:
//pass list1 into a method from class1
break;
case 2:
//pass list2 into a method from class2
break;
...//etc for several more lists
}
Run Code Online (Sandbox Code Playgroud) 我希望以前没有问过这个问题.
我有一个名为boolIsAllowed的可空布尔值和一个if条件,如下所示:
if(boolIsAllowed.HasValue && boolIsAllowed.Value)
{
//do something
}
Run Code Online (Sandbox Code Playgroud)
我的问题是这个好的代码还是我会更好地将它分成嵌套的if语句?如果boolIsAllowed.HasValue等于false然后抛出异常,是否会检查第二个条件?
我希望这个问题不是太愚蠢.
提前致谢.
c# ×7
list ×2
string ×2
.net ×1
asp.net ×1
attributes ×1
browser ×1
generics ×1
html ×1
html-table ×1
if-statement ×1
jquery ×1
linq ×1
nunit ×1
refactoring ×1
replace ×1
resharper ×1
split ×1
tdd ×1
unit-testing ×1
width ×1