运行过程不断将对象与当前时间传递给事件?

时间:2018-06-29 11:09:53

标签: c#

我在列表中有一个交易列表,每个交易都有特定的日期/时间

我需要实现一些始终在运行的东西,然后检查我的列表并在给定当前时间的每个事务下触发一种方法

什么是最好的方法?

例如

交易1 11:22:11 交易2 11:22:55

在11:22:11,我需要启动一种方法,该方法赋予事务Transaction 1 在11:22:55,我需要为方法Transaction 2触发一个方法

我见过人们提到石英,但是我的要求并不完全适合日程安排/工作情况,我需要在我的应用程序中运行它

我正在使用C#

保罗

1 个答案:

答案 0 :(得分:0)

您可以为List创建Extension Method,然后从扩展方法中调用您的方法。

这样,您将拥有事务的当前对象以及添加它的时间。

public static class MyExtensions 
{
    public static void AddWithFire<T>(this List<T> list, T item)
    {
         list.Add(item);
         // Add Your method call with item object
         // YourMethod(item);
    }
}

更新:假设您想使用对象的任何属性

public static class MyExtensions 
{
    public static void AddWithFire<T>(this List<T> list, T item)
    {
         list.Add(item);

         if(item is Transaction)
         {
            // Call Your method that takes DateTime
            YourMethod(((Transaction)item).TransactionDate);
         }
    }
}

public class Transaction
{
    public DateTime TransactionDate {get; set;}
}