小编Mic*_*che的帖子

使用阿克曼函数?

在我大学的离散数学课程中,教师向学生展示Ackermann功能,并指导学生在纸上开发功能.

除了作为递归优化的基准之外,Ackermann函数是否有任何实际用途?

algorithm math complexity-theory discrete-mathematics

10
推荐指数
2
解决办法
7401
查看次数

在流畅的界面中实现条件

我一直在尝试为我的系统中的一组规则实现流畅的界面.我想要完成的是这个

TicketRules
.RequireValidation()
.When(quartType => quartType == QuartType.Before).TotalMilageIs(64)
.When(quartType => quartType == QuartType.After).TotalMilageIs(128);
Run Code Online (Sandbox Code Playgroud)

但是,我无法实现当我有条件的时候.目前,我需要在此片段中调用When()两次:

rules.When(param => param.Remarque == "Test").TotalMilageIs(100);
rules.When(param => param.Remarque == "Other").TotalMilageIs(50);

var params1 = new AddTicketParameters() { Remarque = "Test" };
var params2 = new AddTicketParameters() { Remarque = "Other" };

rules.ExecuteWith(params1);

Assert.That(ticket.TotalMilage, Is.EqualTo(100));

rules.ExecuteWith(params2);

Assert.That(ticket.TotalMilage, Is.EqualTo(50));
Run Code Online (Sandbox Code Playgroud)

我的TicketRules类看起来像这样:

[EditorBrowsable(EditorBrowsableState.Never)]
public class TicketRules : ITicketRule, IHideObjectMembers
{
    private Ticket theTicket;

    public Ticket Ticket
    {
        set
        {
            theTicket = value;
        }
    }

    private List<ITicketRule> allRules = new List<ITicketRule>();

    public …
Run Code Online (Sandbox Code Playgroud)

c# oop fluent-interface .net-2.0

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