小编mac*_*kow的帖子

不理解IEnumerable <T>

我的代码遇到了很多麻烦.当我编译时,我收到以下错误:


'Ecommerce.DataHelpers.ProductNodeLoader'未实现接口成员'System.Collections.IEnumerable.GetEnumerator()'.'Ecommerce.DataHelpers.ProductNodeLoader.GetEnumerator()'无法实现'System.Collections.IEnumerable.GetEnumerator()',因为它没有匹配的返回类型'System.Collections.IEnumerator'.


我不知道如何解决这个问题现在我不得不问你们!

码:

namespace Ecommerce.DataHelpers
{
    public class ProductNodeLoader<T> : IEnumerable<T>
    {
        private ISqlHelper sqlHelper;
        private IRecordsReader nodeReader;

        public List<T> list = new List<T>();

        // load all products from given company
        public IEnumerator<T> GetEnumerator()
        {
            int companyId = 2;
            try
            {
                sqlHelper = DataLayerHelper.CreateSqlHelper(GlobalSettings.DbDSN);
                nodeReader = sqlHelper.ExecuteReader(@"
                    SELECT * FROM eCommerceNodes WHERE companyId = @companyId)
                    ", sqlHelper.CreateParameter("@companyId", companyId));

            }
            catch (Exception e)
            {
                Log.Add(LogTypes.Custom, -1, e.InnerException.ToString());
                yield break;
            }

            if (nodeReader.HasRecords)
            {
                while(nodeReader.Read())
                {
                    ProductNode node = new ProductNode(); …
Run Code Online (Sandbox Code Playgroud)

.net c# ienumerable

1
推荐指数
1
解决办法
446
查看次数

标签 统计

.net ×1

c# ×1

ienumerable ×1