2 回答
TA贡献1818条经验 获得超8个赞
您的月份数组是静态的,不要这样做。
在您设置的并发操作期间,您的类的以下成员由该类UnusedRolesOccurrence的所有实例共享。
private static int[] month = new int[12];
删除 static 关键字,每个实例UnusedRolesOccurrence都会有自己的.month数组。
注意:您可能在此代码中还有其他问题,但您的问题来自这里的这个问题。
TA贡献1830条经验 获得超3个赞
它正在以这种方式工作。
前:
int[] arr_month = new int[12];
var tmp = unusedroles.Select(x => new { x.Username, x.Role }).Distinct();
foreach (var item in tmp)
{
unusedrolesoccurrence.Add(new UnusedRolesOccurrence
{
//Username = item.Username, Role = item.Role, Month = dictionary_month
Username = item.Username, Role = item.Role, Month = arr_month
});
}
后:
var tmp = unusedroles.Select(x => new { x.Username, x.Role }).Distinct();
foreach (var item in tmp)
{
unusedrolesoccurrence.Add(new UnusedRolesOccurrence
{
//Username = item.Username, Role = item.Role, Month = dictionary_month
Username = item.Username, Role = item.Role, Month = new int[12]
});
}
- 2 回答
- 0 关注
- 228 浏览
添加回答
举报
