3
检测IEnumerable“状态机”
我刚刚读了一篇有趣的文章,《用C#收益回报变得太可爱了》 这让我想知道最好的方法是检测IEnumerable是否是实际的可枚举集合,或者它是使用yield关键字生成的状态机。 例如,您可以将DoubleXValue(来自本文)修改为以下内容: private void DoubleXValue(IEnumerable<Point> points) { if(points is List<Point>) foreach (var point in points) point.X *= 2; else throw YouCantDoThatException(); } 问题1)有更好的方法吗? 问题2)创建API时,我应该担心这一点吗?
17
c#
api-design