一.定义接口
public interface ICustom
{
string Title { get; set; }
string Content { get; set; }
}
二.实现接口
public class Custom : ICustom
{
public string Title { get; set; }
public string Content { get; set; }
public Custom() { }
public Custom(string title, string content)
{
this.Title = title;
this.Content = content;
}
}
三.集合结果处理
public class CustomSet<T> where T : ICustom
{
/// <summary>
/// 定义存储集合
/// </summary>
private readonly Queue<T> newQue = new Queue<T>();
/// <summary>
/// 添加内容
/// </summary>
/// <param name="info"></param>
public void AddCustom(T info)
{
lock (this)
{
newQue.Enqueue(info);
}
}
/// <summary>
/// 验证是否向自定义集合中存储数据
/// </summary>
public bool IsCustomSetValidate => newQue.Count > 0;
/// <summary>
/// 返回集合的最后一个结果
/// </summary>
/// <returns></returns>
public T GetCustomSet()
{
T doc = default(T);
lock (this)
{
doc = newQue.LastOrDefault();
}
return doc;
}
/// <summary>
/// 输出数据集合
/// </summary>
/// <returns></returns>
public void GetAllCustomSet()
{
foreach (T que in newQue)
{
Console.WriteLine(que.Title);
}
}
}
四.调用测试
CustomSet<Custom> custom = new CustomSet<Custom>();
custom.AddCustom(new Custom { Title = "CUSTOMTITLEA", Content = "CUSTOMCONTENTA" });
custom.AddCustom(new Custom { Title = "CUSTOMTITLEB", Content = "CUSTOMCONTENTB" });
custom.GetAllCustomSet();
Console.WriteLine(custom.IsCustomSetValidate ? custom.GetCustomSet().Content : null);