我创建了一个网站。注册用户可以做任何事情。但我想允许注册用户创建允许未注册用户以注册用户身份浏览的链接。但是这个链接会有过期日期。当未注册用户点击此链接时,他/她可以浏览网站。
我在 ASP MVC 4.0 中创建这个站点
你能帮我正式确定结构吗?
感谢您的关注。
我创建了一个网站。注册用户可以做任何事情。但我想允许注册用户创建允许未注册用户以注册用户身份浏览的链接。但是这个链接会有过期日期。当未注册用户点击此链接时,他/她可以浏览网站。
我在 ASP MVC 4.0 中创建这个站点
你能帮我正式确定结构吗?
感谢您的关注。
假设您有Link
模型:
public class Link
{
public int Id { get; set; }
public string Title { get; set; }
public int UserId { get; set; }
public DateTime CreateDate { get; set; }
}
当用户创建链接时,将当前日期设置DateTime.Now
为CreateDate
属性。使用此方法显示链接:
public static bool AllowToDisplay(DateTime linkDate)
{
TimeSpan ts = new TimeSpan();
ts = DateTime.Now - linkDate;
return ts.TotalDays > 3;
}
鉴于:
@if(AllowToDisplay(Model.CreateDate))
{
<a href="Model.Title">Some text</a>
}
很简单。当用户创建链接时,捕获日期时间并将其保存在数据库中。每次单击链接时,请检查链接的使用期限是否超过 3 天。如果是,请停用链接和/或删除它。这是最简单的方法。
另一种方法是运行一个进程,该进程将在 3 天后检查并自动禁用链接。不过,这通常更难实现。