2013-06-29 4 views
0

프로젝트 A와 B가 포함 된 C# 솔루션이 있으며 B는 A에 대한 참조를 포함합니다. A에는 직렬화 가능 클래스 ClassA가 포함되어 있습니다. B는 ClassB1과 ClassB2의 두 클래스를 포함합니다. ClassB1에서 ClassA 유형의 객체를 직렬화하여 Folder1에 저장합니다. Folder1 솔루션에 속해 있지만 프로젝트 A 또는 B. ClassB1에서 개체를 deserialize하려고하면 잘 작동합니다. 그럼 ClassB2 필사적으로 직렬화 된 개체를 deserialize하려고합니다. Folder1 오류 메시지에 대한 액세스가 거부되었습니다.다른 클래스, 동일한 프로젝트에서 비 직렬화

어떤 아이디어가이 오류가 발생하며 어떻게 해결할 수 있습니까?

업데이트. 프로젝트 B에서는 ClassB1 유형의 객체를 생성자에서 직렬화했습니다. 나는 ClassB2에서 하나를 deserialize 할 수 없다! 모든 직렬화 된 파일은 솔루션 프로젝트 C의 기본 프로젝트에서 Folder1에 있습니다. 객체를 직렬화 한 동일한 클래스에서 비 직렬화 할 때마다 매력처럼 작동합니다. 그러나 다른 클래스에서 deserialize하려고하면 같은 폴더 Folder1에서 실패합니다.

+0

퍼즐 테스트입니까? – FeliceM

+0

나는 질문을 편집했다. – stringofquarks

+0

오류 메시지가 무엇입니까? : @ –

답변

0

액세스가 거부 된 경우 일부 파일 잠금 문제라고 말합니다. 여는 모든 파일 스트림을 멋지게 닫으시겠습니까?

+0

이것은 내 생각이기도하지만 내가 연재 할 때 필자는 파일 스트림을 닫는다. 나는 직렬화 한 같은 클래스의 메서드에서 문제없이 개체를 deserialize 할 수 있다는 사실을 강조합니다. 질문에서 설명한 것처럼 다른 클래스에서 비 순차 화하려고하면 문제가 발생합니다. – stringofquarks

+0

미스터리 해결, deserializing 수업에서 파일 경로가 잘못되었습니다! – stringofquarks

관련 문제