Люди из MS до сих пор неплохо справились с задачей обеспечения обратной совместимости между выпусками Silverlight. Но произошли некоторые существенные изменения, и в зависимости от того, что делает ваше приложение, какие функции оно использует и какие ошибки во время выполнения оно использует, оно может продолжать или не работать корректно в будущих версиях среды выполнения. MS приводит несколько хороших примеров переломных изменений между Silverlight 3 и Silverlight 4 здесь .
Один пример из множества: Silverlight 4 представляет новое свойство «Водяной знак» в классе Textbox. Возможно, что приложение Silverlight 2 или Silverlight 3 подклассифицировало класс Textbox и добавило свое собственное свойство Watermark. Таким образом, ссылки в XAML на это свойство Watermark могут вызвать исключение AmbiguousMatchException при выполнении в среде выполнения Silverlight 3 или Silverlight 4.
Предположительно, будет больше изменений такого рода, когда MS перейдет на SL5, а затем на SL6 и т. Д., И их команда разработчиков перестанет так сильно беспокоиться о взломе приложений SL2. Изменение, которое вводит действительно классную функцию, но нарушает некоторую разумную часть приложений SL2, вероятно, было бы неприемлемо в SL5, но, возможно, не в SL6 или SL7.
Моя рекомендация в вашей конкретной ситуации заключается в том, чтобы сообщить вашим клиентам о возможности возникновения проблем в будущем, чтобы у них была возможность принять решение по этому вопросу, когда это не является чрезвычайной ситуацией.