小编use*_*657的帖子

Moq如何使用包含特定值的列表来确定方法

嗨说我有一个带有以下签名的方法:

public void GeneratePaymentAdvise(IList<int> paymentIds)
Run Code Online (Sandbox Code Playgroud)

这是通过另一种方法调用的:

public void UpdatePaymentStatus(IList<int> paymentIds, IPaymentLogic paymentLogic)
{
 ...
   paymentLogic.GeneratePaymentStatus(paymentIds);
 ...
}
Run Code Online (Sandbox Code Playgroud)

所以在单元测试中,我想确保调用它.使用moq:

var mockPaymentLogic = new Mock<PaymentLogic>();

UpdatePaymentStatus(new List<int> { 2, 3 }, mockPaymentLogic.Object);

mockPaymentLogic.Verify(x => x.GeneratePaymentStatus(It.IsAny<IList<int>>());
Run Code Online (Sandbox Code Playgroud)

所以这可以正常工作并检查GeneratePaymentStatus是否被调用,但只有使用任何旧的int列表调用.

有没有办法重写这个,所以它测试GeneratePaymentStatus是用一个包含2和3的整数列表调用的?

c# moq

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

有没有更好的方法来设置linq中项目列表的公共属性

我有以下课程:

public class Vehicle
{
    public string Make { get; set; }
    public DateTime DateManufactured { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

然后,我列出了一些车辆:

        var dateTime1 = DateTime.Now.AddDays(-7);
        var dateTime2 = DateTime.Now.AddDays(-8);
        var dateTime3 = DateTime.Now.AddDays(-9);

        var vehicles = new List<Vehicle>
            {
                new Vehicle {Make = "Ferrari", DateManufactured = dateTime1},
                new Vehicle {Make = "Mazda", DateManufactured = dateTime2},
                new Vehicle {Make = "Dodge", DateManufactured = dateTime3},
                new Vehicle {Make = "Holden", DateManufactured = dateTime1},
                new Vehicle {Make = "Chrysler", DateManufactured = dateTime2},
                new …
Run Code Online (Sandbox Code Playgroud)

c# linq

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

jquery show hide表格基于数据属性和类的行

说我有一些表行:

<tr class="toplevel" data-id="3">
 ...
</tr>
<tr data-id="3">
 ...
</tr>
<tr data-id="3">
 ...
</tr>
Run Code Online (Sandbox Code Playgroud)

所以据我所知,我可以隐藏那些像班级一样的人:

$('tr.toplevel').hide();
Run Code Online (Sandbox Code Playgroud)

我可以隐藏data-id = 3的那些:

$('tr').data('3').hide();
Run Code Online (Sandbox Code Playgroud)

然而,我真正想做的是隐藏那些没有类顶级的data-id = 3的那些.

有人可以向我解释如何做到这一点?

jquery

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

如何在appsettings中存储带有html内容的字符串

我写了一些电子邮件代码,我需要发送所有带签名的电子邮件.

我被要求将签名存储在web.config文件的appsettings中.

我不确定这是不是正确的地方.有人可以告诉我吗?据我所知,那里只会有一个电子邮件签名.

我试过了:

<appSettings>
<add key="CompanyEmailSignature" value="The Biscuit Factory\n\r
        Somewhere in the Bahamas\n\r
        <a href="http://www.thebiscuitfactory.com">The Biscuit Factory</a>\n\r
        Our mission is to make tasty biscuits" />

    </appSettings>
Run Code Online (Sandbox Code Playgroud)

但我不确定如何逃避链接.我看了一些建议并尝试过:

<a href=""http://www.thebiscuitfactory.com"">The Biscuit Factory</a>
Run Code Online (Sandbox Code Playgroud)

我试过了:

<a href=\"http://www.thebiscuitfactory.com\">The Biscuit Factory</a>
Run Code Online (Sandbox Code Playgroud)

但无法让它发挥作用.

任何人都可以告诉我如何逃避这一点,如果有其他地方,这将更好地存储?

c#

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

linq sum如何显示为货币

我在剃须刀视图中有以下内容:

<td>@payments.Sum(p => p.Amount)</td>
Run Code Online (Sandbox Code Playgroud)

我希望它显示为货币,所以最后有'$'和两位小数.

我想通常你会像{0:C}那样.

我不知道如何将其合并到我所拥有的内容中,因为Sum没有格式化的重载.

我需要用css类做这个吗?

c# linq razor

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

如何避免在子类调用它时调用基本方法两次,同样也调用其中一个父类

我有以下关于野生动物园的代码:

public class Bird
{
  public void virtual Exercise()
  {
     some logic here
  }

  public void virtual Feed()
  {
     Exercise();

     some logic here
  }
}


public class Penguin : Bird
{
  public void override Exercise()
  {
     base.Exercise();
     some logic here
  }

  public void override Feed()
  {
     Exercise();
     base.Feed();
     some logic here
  }
}
Run Code Online (Sandbox Code Playgroud)

所以每次喂鸟都必须运用它.然而,一只鸟可以在没有喂食的情况下锻炼.

企鹅是一种特殊类型的鸟类,需要进行鸟类锻炼和一些特定的企鹅锻炼.喂养企鹅需要喂鸟以及一些额外的企鹅需求.

我在这里使用此代码的问题是,当Feed被调用时,它会进行两次鸟类练习.企鹅会变得非常疲惫.

我怎样才能改进代码,这样当企鹅被喂食时,它们只会在每次喂食时为鸟类和企鹅运动一次?

c# inheritance

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

标签 统计

c# ×5

linq ×2

inheritance ×1

jquery ×1

moq ×1

razor ×1