0
개체를 캐시 할 예정입니다. http://msdn.microsoft.com/en-us/library/ms227644(v=vs.80).aspx캐싱 데이터 집합 전달 값 또는 참조?
if (Cache["customerDataSet"] == null)
{
dataSet = DataSetConfiguration.CustomerDataSet;
Cache["customerDataSet"] = dataSet;
}
else
{
dataSet = (DataSet)Cache["customerDataSet"];
}
에서 명백한 인기 체크 전에 읽을 정책은 DataSet 개체의 존재를 보호합니다. dataSet은 객체에 대한 참조 일 뿐이므로 캐시의 실제 데이터 세트는 밀리 초 단위로 이동할 수 있습니다 (예 : foreach 루프 중간). 만약 그렇다면,
dataSet = ((DataSet)Cache["customerDataSet"]).Copy();
이 더 안전해야합니다. .Copy() 도중에 캐시가 만료 될 수 있습니다. 내가 옳은가 아니면 이것은 단지 지나치다는 생각인가?
마지막 문장은 참입니다.) –
캐시가 일시적이므로 ApplicationState를 사용했지만 캐시가 더 잘 작동 할 수 있다고 생각합니다. –