Вы также можете вызвать неуправляемый код через P / Invoke. Это может быть проще, если ваш код в настоящее время не использует COM. Полагаю, вам, возможно, понадобится написать некоторые конкретные точки экспорта в вашем коде, используя привязки "C", если вы пошли по этому пути.
Вероятно, самое большое, на что вы должны обращать внимание в моем опыте, это то, что отсутствие детерминированной сборки мусора означает, что ваши деструкторы не будут работать, когда вы, возможно, думали, что они будут раньше. Вы должны помнить об этом и использовать IDisposable или другой метод, чтобы убедиться, что ваш управляемый код очищен, когда вы этого хотите.