이것은 며칠 동안 작업 해 왔던 문제입니다. 나는 2 개의 클래스가있는 게임 라이브러리를 만들었습니다. 하나는 이름과 타입을 바꾸고 싶은 변수가 들어 있고, 다른 하나는 XML 파일에 쓰는 데 사용됩니다 (순차 화). 이 내 직렬화 클래스입니다 :XML 파일의 데이터를 XNA 4.0으로로드
namespace Postavke
{
public class TempMain
{
public static void Main()
{
object TestValue = new PostavkeStanice();
XmlWriterSettings XMLPostavke = new XmlWriterSettings();
XMLPostavke.Indent = true;
using (XmlWriter pisac = XmlWriter.Create("Postavke.xml", XMLPostavke))
{
IntermediateSerializer.Serialize(pisac, TestValue, null);
}
}
}
}
XML 파일은 매우, 매우 간단합니다, 그래서 내가 ("PostavkeStanica")를 직렬화 하나의 bool
변수를 가지고 싶어하는 클래스입니다. XML에서 내 XNA 4.0 프로그램으로 데이터를로드 할 때 문제가 나타납니다. 나는 ContentManager
사용하지만, 내가 그 값이 설정해야 변수를 사용하려고하면, 나는 선언 영역에서의 오류
"There was an error while deserializing intermediate XML. Cannot find type Postavke.PostavkeStanice"."
를 얻을 :
ContentManager upraviteljSadrzaja;
PostavkeStanice radnaStanica1;
LoadContent 메서드에서 :
radnaStanica1 = upraviteljSadrzaja.Load<PostavkeStanice>(@"Teksture/Postavke");
은 "PostavkeStanica"클래스는 내가 특정 객체가 활성화 또는 DIS되어 있는지 확인하는 데 사용할 "Stanje"라는 단 하나의 bool
변수를 가지고 예를 들어, 저소득자 : 이동 객체 radnaStancia1 객체의 앞에 (그 위치를 변경하지 않는다)과 contition가 참일 때 움직임을 멈출 경우 코드
if (position == stanica1 && radnaStanica1.Stanje)
{
kontrola = false;
}
이 조각을 결정한다. XML 파일을 사용하여이 변수의 값을 설정하려고합니다. 전체 솔루션을 다시 작성하지 않고 해당 변수의 값을 변경할 수 있기를 원하기 때문입니다.
감사합니다.
예, 그래도 나에게도 동일한 오류가 발생합니다. 이것은 나를 혼란스럽게하는 부분입니다. 논리적으로, 필자는 "PostavkeStanice"클래스에 해당하는 XML 파일을 만들기 위해 직렬화가 한 번만 필요합니다. 콘솔 응용 프로그램에 대한 게임 라이브러리의 출력 유형을 선택하고 디버그 -> 새 인스턴스 시작으로 XML 파일을 만들었습니다. 이제 XML 파일이 필요합니다. Content 폴더에 붙여 넣어야합니까? – NDraskovic
아니요, 경로가 유효한 경우 콘텐츠 관리자가 경로를 찾을 수 있습니다. 나는 해결책이 무엇인지 모르겠다. xml에 "XnaContent"태그가 있습니까? 및 'Type = PostavkeStanice'특성이있는 "자산"태그가 있습니까? –
' XML 버전 = "1.0"인코딩 = "UTF-8"?> <자산 타입 = "Postavke.PostavkeStanice"> 거짓 radnaStanica1_Stanje> 거짓 radnaStanica2_Stanje> 거짓 radnaStanica3_Stanje> 거짓 kraj_Stanje> ' 이 작성되는 전체 XML 파일입니다. "radnaStanica_stanje"는 "workstation_State"를 의미하고 "kraj"는 "end"및 "Postavke"를 의미합니다.PostavkeStanice "는"Settings.WorkstationSettings "를 의미합니다. –
NDraskovic