Это действительно зависит от пространств имен и классов, которые Вы используете от платформы.NET. У меня был интерес к преобразованию одного из моих сервисов окон работать на моем почтовом сервере, который является Suse, но мы столкнулись с несколькими твердыми контрольно-пропускными пунктами с API, которые не были полностью реализованы. Существует диаграмма где-нибудь на Моно веб-сайте, который перечисляет все классы и их уровень завершения. Если Ваше приложение покрыто, то пойдите для него.
Как любое другое приложение, сделайте разработку прототипа и тестирование, прежде чем Вы возьмете на себя полное обязательство, конечно.
Другой проблемой, с которой мы столкнулись, является лицензируемое программное обеспечение: при ссылке на чужой DLL Вы не можете кодировать свой путь вокруг несовместимостей, которые прокладываются под землей в том блоке.
Для Java следует проверить XMLUnit . И я только что заметил, что у него тоже есть версия .NET! Вот образец версии Java:
String myControlXML = "<msg><uuid>0x00435A8C</uuid></msg>";
String myTestXML = "<msg><localId>2376</localId></msg>";
assertXMLNotEqual(myControlXML, myTestXML);
Вы можете попробовать использовать XmlDiffPatch.dll
для этого. Перейдите на http://msdn.microsoft.com/en-us/xml/bb190622.aspx , загрузите «XML Diff and Patch» и добавьте ссылку на DLL в свой проект. Я никогда не использовал его в реальном коде, но вы можете попробовать инструмент XmlDiff.Exe
, который идет в комплекте, чтобы проверить, соответствует ли он вашим потребностям.