Version: 5.6
Приложения Windows Store: Типы проектов
Приложения Windows Store: Плагины

Приложения Windows Store: Отсутствующие типы .NET

В частности, отсутствуют некоторые данные и некоторые классы не содержат некоторых методов, которые есть в том же классе в Mono.

Для упрощения портирования существующих игр под платформу Windows Store, некоторые из отсутствующих типов .NET предоставляются самим Unity. В дополнение, для упрощения миграции были добавлены некоторые методы расширения и типы замены.

These types are placed in PlaybackEngines\metrosupport\Managed\WinRTLegacy.dll, every Windows Store SDK has its own WinRTLegacy.dll.

Типы, предоставляемые Unity включают в себя:

  • System.Collections.ArrayList
  • System.Collections.Hashtable
  • System.Collections.Queue
  • System.Collections.SortedList
  • System.Collections.Stack
  • System.Collections.Specialized.HybridDictionary
  • System.Collections.Specialized.ListDictionary
  • System.Collections.Specialized.NameValueCollection
  • System.Collections.Specialized.OrderedDictionary
  • System.Collections.Specialized.StringCollection
  • System.IO.Directory
  • System.IO.File
  • System.IO.FileStream
  • System.Xml.XmlDocument
  • System.Xml.XmlTextReader
  • System.Xml.XmlTextWriter

Кроме того, добавлено пространство имён WinRTLegacy для предоставления дополнительных классов и методов расширения. Среди них есть такие:

  • Методы расширения Close() для большинства классов System.IO (либо вы можете использовать Dispose(), который доступен и в Mono и в .NET для приложений Windows Store)
  • WinRTLegacy.TypeExtensions has methods GetConstructor(), GetMethod(), GetProperty() for System.Type
  • Класс WinRTLegacy.Xml.XmlReader, который совместим с System.Xml.XmlReader в Mono
  • Класс WinRTLegacy.Xml.XmlWriter , который совместим с System.Xml.XmlWriter в Mono
  • Класс WinRTLegacy.Xml.XmlReader, который совместим с System.Xml.XmlReader в Mono
  • Класс WinRTLegacy.Xml.XmlWriter , который совместим с System.Xml.XmlWriter в Mono

Проще всего задействовать классы замены из WinRTLegacy с помощью директивы:

#if NETFX_CORE
using XmlReader = WinRTLegacy.Xml.XmlReader;
#else
using XmlReader = System.Xml.XmlReader;
#endif

Таким образом вы можете использовать класс XmlReader, который будет взят из пространства имён WinRTLegacy.Xml в Windows Store приложениях и из пространства имён System.Xml на других платформах.

Universal Windows 10 Apps

Some of the types were brought back to .NET for Universal Windows 10 Apps, thus implementations for these types were removed in WinRTLegacy.dll

Приложения Windows Store: Типы проектов
Приложения Windows Store: Плагины
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961