# Drawings.NET 与 Drawings.NET Classic 有何区别？

 1. [FAQ](/cn/faq)
2. »
3. [Product Descriptions](/faq/product-descriptions)

这两个产品都是基于C++代码的封装层。  
Drawings.NET Classic是一组使用托管C++手动设计的封装器。  
Drawings.NET是通过swig工具生成的一组封装器，是一组使用pInvoke调用C++代码的C#封装器。

这两个产品都允许使用托管语言（如C#、C++/CLI、VB）来使用ODA SDK功能。这些产品是针对C++原生代码的封装器集合。

.NET Classic（或称Drawings .NET Classic）是一个与AutoCAD .NET API完全相同的API。如果您有AutoCAD的.NET插件，您几乎不需要修改就能为ODA应用程序构建它。如果您熟悉AutoCAD .NET API，或者有现有的AutoCAD .NET插件想要移植到基于ODA的应用程序，可以考虑使用.NET Classic。  
缺点是.NET Classic覆盖的C++功能比Drawings.NET少。您可以请求实现AutoCAD API中尚未实现的.NET类，但这比在Drawings.NET中实现需要更多时间（因为在.NET Classic中我们必须手动实现每个类，而在Drawings.NET中我们使用自动代码生成）。

Drawings.NET（或称.NET Swig，或.NET）提供与ODA C++接口完全相同的API。它提供与ODA C++ SDK相同的类、相同的函数和参数。在这个项目中我们使用自动代码生成，因此几乎所有的ODA C++功能都可用。
