希望我刚刚做了一些愚蠢但我得到一个int数组并且我想将它分配给一个属性 - 但即使int数组不是null,当我将它分配给属性时它是null。请注意,当我测试我的select语句正常工作时,这被分成几个语句。
int[] placementslist = selfSelPlacements.Select(p => p == null ? 0 : p.PlacementId).ToArray<int>();
我试过了
UnitOfferingListCriteria.Placements = new int[placementslist.Length];
以及仅指定
UnitOfferingListCriteria.Placements = placementslist;
但是,尽管placementslist有1个项目,但UnitOfferingListCriteria.Placements始终为空。
在我的课堂上
public int[] Placements { get; set; }
如果有人能够指出我做错了什么 - 谢谢!
编辑 - 感谢您的建议,被其他东西淹没,所以还没有机会回到它。
答案 0 :(得分:1)
这对我有用
int[] placementslist = selfSelPlacements.Select(p => p == null ? 0 : p.PlacementId).ToArray<int>();
UnitOfferingListCriteria.Placements = new int[placementslist.Length];
placementslist.CopyTo(UnitOfferingListCriteria.Placements, 0);
和班级
public class UnitOfferingListCriteria
{
public static int[] Placements{ get; set; }
}
你有什么不同的吗?
答案 1 :(得分:0)
public int[] Placements { get; set; }
的默认值为null。
UnitOfferingListCriteria
是类还是类实例?看起来你正在做一些静态属性?或者您正在访问房产上的房产?
答案 2 :(得分:0)
当您执行此操作时,您尝试在该属性中引用的实例不能为null。这是显而易见的,但有时显而易见的是非常明显。