Веб-приложение должно быть скомпилировано, прежде чем оно заработает; это отличается от веб-сайта.
Недостаточно просто указать источники; на самом деле ASP.NET не нужны источники (aspx.cs) для запуска приложения, только файлы .aspx, web.config и .dll («сборки» в .NET lingo). Даже считается хорошей практикой удалять источники из производственной системы, чтобы избежать случайной утечки источников и предоставления злоумышленникам информации о внутренней работе сайта.
Чтобы это работало, вам нужно как-то вызвать компилятор командной строки C #, чтобы построить проект на лету; это сгенерирует необходимые DLL-файлы.
Другим, но гораздо более сложным маршрутом было бы использование возможности .NET для генерации IL во время выполнения; используя эту возможность, вы можете создавать сборки напрямую, не обращаясь к компилятору. Это довольно сложно, и вам нужно полное понимание IL, чтобы осуществить это.