2011-01-13 5 views
0

바라건대 저는 방금 뭔가 바보 짓을했는데 int 배열을 얻었고 그 속성에 할당하려고합니다. 그러나 int 배열이 null이 아니더라도 null을 속성에 할당하면 null이됩니다. 내 select 문이 제대로 작동하는지 테스트 중이므로이 문은 여러 문으로 나뉩니다.int [] 유형의 내 속성이 null로 설정된 이유는 무엇입니까?

int[] placementslist = selfSelPlacements.Select(p => p == null ? 0 : p.PlacementId).ToArray<int>(); 

난 그냥

UnitOfferingListCriteria.Placements = placementslist; 

를 할당하지만 UnitOfferingListCriteria.Placements 항상 1 개 항목을 가지고 placementslist에도 불구하고 널뿐만 아니라

UnitOfferingListCriteria.Placements = new int[placementslist.Length]; 

을 시도했습니다. 누군가가 지적 할 수 있다면

public int[] Placements { get; set; } 

속성에 대한 내 수업에서

은 내가 잘못 뭘하는지 - 감사합니다!

편집 - 제안에 감사 드리며 다른 것들로 가득 차서 아직 다시 돌아올 기회가 없었습니다.

+2

문제를 설명하는 전체 프로그램을 게시 할 수 있습니까? – Ani

+0

속성은 실제로 '게재 위치 {get; 세트; }'또는 실제로 게시하지 않은 getters와 setter가 있습니까? 후자라면 세터가 방금 부러 졌을 것입니다. – Gabe

+0

거기에 어떤 객체가 있습니까? 그렇다면 기본 클래스의 속성을 제대로 재정의하지 않고 숨길 수도 있습니다. – Dyppl

답변

0
public int[] Placements { get; set; } 

의 기본값은 null입니다.

UnitOfferingListCriteria은 클래스 또는 클래스 인스턴스입니까? 정적 속성을 사용하여 무언가를하고있는 것처럼 보입니까? 아니면 부동산에서 부동산에 액세스하고 있습니까?

+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; } 
} 

당신이 다른 것을하고있는 클래스의 작동?

0

속성에서 참조하려는 인스턴스가 null 일 수 없습니다. 이것은 분명하지만 때로는 명백한 것이 분명합니다.

관련 문제