本机C++类与 WinRT 组件(引用类)之间的自动映射

Automatic mapping between Native C++ classes and WinRT Components (ref classes)?

本文关键字:之间 映射 引用 类与 C++ WinRT 组件 本机      更新时间:2023-10-16

>假设我用纯原生C++编写了 BL(为了在其他平台上重用它),现在我想将某些类公开为 WinRT 组件(以便我可以用 C# 编写 UI)。

是否有任何代码生成器可以为给定的本机C++类自动生成等效的"ref 类"(WinRT 组件),并生成将一组属性从一个属性复制到另一个属性的映射代码(有点像 AutoMapper 为 .NET POCO 所做的?

没有这样的工具,WinRT和Cx不需要一个。我想说的是,这是你在原生C++逻辑中的架构责任的一部分。

面向 Windows 8 的 WinRT 和C++环境如何帮助你:

  • 您可以轻松地将 ISO C++ 代码与基于 Cx/WinRT 的C++代码混合,潜在方向是一个包装器
  • 您可以使用 WRL 和一些 COM 魔法以 100% ISO C++编写 WinRT 组件,这可以帮助您重新考虑 BL 以使其适应新目标

以下链接是 WRL 模板库的指针:

http://channel9.msdn.com/Events/Windows-Camp/Developing-Windows-8-Metro-style-apps-in-Cpp/The-Windows-Runtime-Library-WRL-

http://msdn.microsoft.com/en-us/library/vstudio/hh438466.aspx