0

在我的应用程序中,用户可以放置产品他的个人资料。我想限制这一点。型号为:

public class Product
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public DateTime CreateDate { get; set; }

        public int UserId { get; set; }
    }

当我保存产品时,我需要 AllowedProductSave(userId) 检查是否允许的方法:

if (AllowedProductSave(userId))
{
  SaveProduct(productModel, userId);
}

假设我有所有方法GetProductsByUserId(), GetUsersFirstProduct(), GetUsersLastProduct()和其他查询方法。我只需要限制逻辑,授予用户权限,他只能创建 3 个产品,仅限一个月。这意味着,每 30 天,用户只能保存 3 个产品。如果他保存了 3 个产品,他将等待接下来的 30 天间隔来保存更多的 3 个。

它应该以某种方式:

1)按月份名称 - 检查从 1 到 31 的月份。

2)任何间隔。间隔可能在不同的月份。从 2 月 9 日(此区间的第一个产品)到 3 月 9 日(此区间的最后一个产品)

但对我来说都是一样的。

产品模型具有CreateDate属性,如果需要我可以添加其他属性(例如计数)。我该如何解决这个任务?

4

0 回答 0