Хорошо, обо всем по порядку ... MachineKey - это правда. Это должно быть абсолютно одинаковым на всех машинах с балансировкой нагрузки. Я не помню всего, на что это влияет, но все равно делаю это.
Во-вторых, сделайте прекомпиляцию сайта. На самом деле вы все равно можете выдвигать новые версии, когда есть файл .cs для страницы, которую страница перекомпилирует. Хитрость заключается в том, что файлы app_code компилируются в одну DLL. Тем не менее, если там внесены изменения, вы можете загрузить новую DLL и снова все должно быть в порядке.
Чтобы еще проще, включите опцию «Использовать фиксированные имена и одностраничные сборки». Это обеспечит одинаковое имя для каждой компиляции, поэтому вы просто протестируете, а затем замените измененные DLL-файлы.
Все это говорит, у вас не должно быть проблемы как есть. Запрос отправляется в IIS, который просто обслуживает страницу и компилирует по мере необходимости. Если код на каждой машине различен, это на самом деле не должно иметь значения, код такой же, и эта машина будет ссылаться на свой собственный код. Фактический запрос / постбэк не знает и не заботится об этом. Все, что я сказал выше, должно помочь упростить вещи, но это должно работать в любом случае ... так что это, вероятно, проблема с машиной.