小编Nig*_*ape的帖子

将结果添加到 TestCaseSource

我有一个简单的方法,可以从列表中计算给定的计算结果。我想为这个方法编写一些测试。

我正在使用 NUnit。我正在使用 TestCaseSource 因为我试图提供一个列表作为参数。我从这个问题得到了解决方案。我的测试如下所示:

[TestFixture]
    public class CalcViewModelTests : CalcViewModel
    {
        private static readonly object[] _data =
            {
                new object[] { new List<string> { "3", "+", "3" } },
                new object[] { new List<string> { "5", "+", "10" } }
            };

        [Test, TestCaseSource(nameof(_data))]
        public void Test(List<string> calculation)
        {
            var result = SolveCalculation(calculation);

            Assert.That(result, Is.EqualTo("6"));
        }
    }
Run Code Online (Sandbox Code Playgroud)

我想像测试用例一样测试多个计算。

测试用例具有Result 参数。如何将结果添加到 TestCaseSource 以便我可以测试多个计算?

c# testing nunit unit-testing

7
推荐指数
2
解决办法
2300
查看次数

当返回类型为 IHttpActionResult 时,Web API 2 返回不带引号的简单字符串

我的问题是指这个问题

答案仅显示您必须将方法类型更改为HttpResponseMessageor的解决方案string

这是我的方法:

public IHttpActionResult Get()
{
    return Ok("I am send by HTTP resonse");
}
Run Code Online (Sandbox Code Playgroud)

它返回:

"I am send by HTTP resonse"
Run Code Online (Sandbox Code Playgroud)

我预计:

I am send by HTTP response
Run Code Online (Sandbox Code Playgroud)

有没有办法返回一个不带引号的简单字符串,其中方法的返回类型是IHttpActionResult

c# asp.net asp.net-web-api asp.net-web-api2

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

Get all values between two specific values in a list

I have a char list:

var myList = new List<char>(new[] { 'x', 'y', '(', 'a', 'b', 'c', ')', 'z' });
Run Code Online (Sandbox Code Playgroud)

With the values:

 'x'
 'y'
 '('
 'a'
 'b'
 'c'
 ')'
 'z' 
Run Code Online (Sandbox Code Playgroud)

How can i take all the values between the braces? The values in new list should look like this:

 'a'
 'b'
 'c'
Run Code Online (Sandbox Code Playgroud)

The index of the braces in the list can change every session.

c# linq char

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

获取JSON对象的绝对路径

我有一个 JSON 对象:

{
  ""settings"": {
    ""general"": {
      ""database"": { ""type"": ""PostgreSql"" }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我的 JSON 对象的绝对路径如下所示:settings/general/database/type

我试图用这个问题的第一个解决方案获取所有密钥:

IList<string> keys = parent.Properties().Select(p => p.Name).ToList();
Run Code Online (Sandbox Code Playgroud)

这对我不起作用。该keys列表只包含第一个密钥settings,没有其他密钥。

有一个path属性显示您所在节点的路径,但它不显示 JSON 对象的完整路径。

在此输入图像描述

如何获得像我的示例中那样的绝对路径?

c# json json.net

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

使自定义计算方法采用任何通用运算符

我必须计算将第一个数字、第二个数字和操作作为参数的方法。

public static double Calculate(double firstNumber, double secondNumber, string operation)
{
    var result = default(double);
    switch (operation)
    {
        case "+":
            result = firstNumber + secondNumber;
            break;
        case "-":
            result = firstNumber - secondNumber;
            break;
        case "*":
            result = firstNumber * secondNumber;
            break;
        case "/":
            result = firstNumber / secondNumber;
            break;
    }

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

现在我正在使用一个开关。当操作是“+”时,我添加数字。

如何让计算方法将任何算术运算符作为参数,而不必为其添加特定案例?

我的想法最终是这样的:

public static string Calculate(double firstNumber, double secondNumber, string operation)
{
     return firstNumber operation secondNumber;
}
Run Code Online (Sandbox Code Playgroud)

我从这个问题 …

c# math

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