서버와의 TCP 연결을 통해 xml 직렬화 된 데이터를 교환하는 Windows Store 응용 프로그램을 만들어야합니다. 응용 프로그램에서 Direct3D 렌더링을 사용해야하므로 C ++ / cx 저장소 응용 프로그램 템플릿을 사용했지만 xml 직렬화 / 역 직렬화 문제가 발생했습니다.
C #의 일반적인 접근 방식은 DataContractAttribute 주석 과 함께 XmlSerializer 및 클래스 를 사용하는 것 입니다. 그러나 어셈블리 가져 오기를 시도하자마자 오류가 발생 합니다. 그러나 C #의 Windows Phone 앱에서이 접근 방식을 사용하는 것을 언급하는 많은 예가 있습니다.System.Xml.Serialization
C1114
WinRT does not support #using of a managed assembly
따라서 질문은-Windows Store 응용 프로그램에서 .NET에 대한 지원이 C ++ / cx로만 제한되며 C #은 전화의 모든 표준 구성 요소를 사용할 수 있거나이 경우에도 솔루션이 아니므로 C #으로 전환합니다. XML 직렬화 / 역 직렬화를위한 WinRT 클래스?
Microsoft가 제시 한 다양한 프레임 워크로 인해 귀하의 혼란을 이해할 수 있습니다.
C ++ / Cx는 WinRT (Windows 런타임 )에 대한 기본 바인딩입니다. 어떤 방식 으로든 관리 코드 나 .NET 프레임 워크를 사용하지 않으므로 C1114 오류가 발생합니다.
C #은 WinRT에 대한 관리되는 바인딩을 제공합니다. .NET 프레임 워크를 활용하므로 C # Windows Store 애플리케이션에서 일부 기본 클래스 라이브러리를 사용할 수 있습니다. 이 하위 집합을 .NET 프로필이라고합니다. 이 기사에서는 이에 대해 자세히 설명합니다. http://blogs.msdn.com/b/dotnet/archive/2012/04/17/net-for-metro-style-apps.aspx
특정 경우에는 Direct3D에 대한 액세스를 원하기 때문에 C ++ / Cx 응용 프로그램을 사용하고 있습니다. 이는 System.Xml.Serialization에 액세스 할 수 없음을 의미하지만 의미가 있습니다. 대신 XML, 특히 Windows.Data.Xml.Dom : https://msdn.microsoft.com/en-us/library/windows/ 를 읽으려면 C ++ / Cx에서 사용할 수있는 API를 사용해야합니다. apps / windows.data.xml.dom.aspx
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다