Generic IEnumerator not disposed
还没有人认领这个 Issue。
评估
调研方向
从 Mapster.Tool 开始,使用所示的 NewConfig<TSource, TDestination>().GenerateMapper(...) 注册来复现生成的扩展方法。检查 GetEnumerator() 的生成路径,包括适用时从接口生成的代码;完成的标准是生成的泛型枚举器在迭代期间会被释放,同时迭代行为保持不变。
由索引模型根据 Issue 内容生成。
描述
I'm using Mapster.Tool to generate extension methods from my mapping registrations like so:
config.NewConfig<TSource, TDestination>().GenerateMapper(MapType.Map | MapType.MapToTarget);
When inspecting the generated code I noticed that anywhere GetEnumerator() is used, the generic Enumerator is never disposed.
This is a snippet of what is being generated:
...
IEnumerator<string> enumerator = p2.GetEnumerator();
while (enumerator.MoveNext())
{
string item = enumerator.Current;
result.Add(item);
}
return result;
I believe what it should be generating is the following:
using IEnumerator<string> enumerator = p2.GetEnumerator();
while (enumerator.MoveNext())
{
string item = enumerator.Current;
result.Add(item);
}
return result;
I'm not sure if this issue arises in other areas (e.g. generated code from interfaces) as I haven't tested it personally, but I would expect the Mapster.Tool generates the code the same way.
- 主要语言
- C#
- 星标
- 5.2k
- 派生
- 411
- 平均合并
- 1 天 8 小时
- 30 天内合并 PR
- 4
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
MapsterMapper/Mapster 的其他 Issue
-
.NET Matrix未关闭
难度 2/5 1-3 小时 新手友好度 72/100
MapsterMapper/Mapster#1003 ·
-
难度 3/5 1-2 天 新手友好度 58/100
MapsterMapper/Mapster#1024 · 1 条评论 ·
-
[Mapster Tool] Add support for global:: to disambiguate type names in generated mappers可能已有人在做 关联的 PR 仍在进行中或已合并。 未关闭improvement
难度 3/5 1-2 天 新手友好度 65/100
MapsterMapper/Mapster#1020 · 5 条评论 ·
-
Mapster.Tool - PropertySettingBuilder.Map(member, mapFunc, targetPropertyName) method is not working as expected!可能已有人在做 关联的 PR 仍在进行中或已合并。 未关闭
难度 3/5 1-2 天 新手友好度 68/100
MapsterMapper/Mapster#1017 · 6 条评论 ·
-
难度 3/5 1-2 天 新手友好度 57/100
MapsterMapper/Mapster#1007 · 5 条评论 ·
查看 MapsterMapper/Mapster 的全部 Issue
相似的 Issue
-
devtools
难度 2/5 1-3 小时 新手友好度 82/100
维护者通常 1 天内回复
-
clawsweeper:fix-shape-clear clawsweeper:needs-maintainer-review clawsweeper:no-new-fix-pr clawsweeper:not-repro-on-main impact:ux-release-blocker issue-rating: 🦪 silver shellfish P0
难度 2/5 1-3 小时 新手友好度 72/100
openclaw/openclaw-windows-node#1843 · 1 条评论 · 1 个 reaction ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 66/100
-
kind:ux size:S type:bug
难度 2/5 1-3 小时 新手友好度 78/100
elsa-workflows/elsa-foundation#3256 ·
维护者通常 1 天内回复
-
[Bug]: Revit selector reads process ids 2000-2099 as years (flaky AgentClientTests.AYearOrAProcessIdSelectsTheHost)可能已有人在做 @Wurschdhaud 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 83/100
pyrevitlabs/pyRevit#3817 ·
维护者通常 1 天内回复