c#

C# property 如何实现延迟加载

小樊
86
2024-07-15 16:56:42
栏目: 编程语言

在C#中,可以通过使用私有字段和属性的方式来实现延迟加载。以下是一个示例代码:

public class LazyLoadingExample
{
    private string _data;
    private bool _isLoaded;

    public string Data
    {
        get
        {
            if (!_isLoaded)
            {
                // 模拟数据加载操作
                _data = LoadData();
                _isLoaded = true;
            }
            return _data;
        }
    }

    private string LoadData()
    {
        // 实际数据加载操作
        return "Loaded data";
    }
}

在上面的代码中,Data属性在第一次访问时会调用LoadData方法加载数据,并将_isLoaded标记为true。之后再访问Data属性时,直接返回之前加载的数据,避免重复加载数据。这样就实现了延迟加载的效果。

0
看了该问题的人还看了