静态工厂方法-将数据保存在列表中的独立类

本文关键字:列表 独立 存在 保存 方法 工厂 数据 静态 | 更新日期: 2023-09-27 18:25:16

我用这个类创建一个值列表

public class map
{
    private static List<map> mapValues = new List<map>();
    public static IEnumerable<map> AllInstances
    {
        get { return mapValues; }
    }
    public int Row { get; set; }
    public int Column { get; set; }
    public Object theobject { get; set; }
    private map()   // Private ctor ensures only a member
    {               // function can create a new map
    }
    public static map Create()
    {
        var mv = new map();
        mapValues.Add(mv);
        return mv;
    }
    public static void Delete(map itemToRemove)
    {
        mapValues.Remove(itemToRemove);
    }
}

我已经根据这个评论建立了这个类

但当我谈到var Foundit = MyData.AllInstances.FirstOrDefault(md => md.Device == "blah");的部分时Myclass没有这个FirstOrDefault

这个列表的想法是拥有一个类似网格/地图的系统,用于在WPF画布中放置对象。

我错过了什么才能让它发挥作用?

静态工厂方法-将数据保存在列表中的独立类

FirstOrDefault是一个扩展方法,所以请尝试添加以下命名空间:

using System.Linq;

另一点:只要AllInstances是静态类成员,就不必从MyData这样的map实例中调用它,只需从以下类中调用它:

map.AllInstances  //access AllInstances through the class name

在要使用.FirstOrDefault(...)的文件顶部添加using System.Linq;