Без какого-либо кода или деталей языка трудно догадаться, в чем проблема, однако распространенной проблемой, возникающей с asp.net, может быть строка подключения к вашей базе данных. Используете ли вы базу данных SQl Server / Sql Server Express с вашим приложением? Вам нужно проверить, что строка подключения.
Проблема в настройке Integrated Security = True в строке подключения. IIS использует вход в Windows ASPNET, который будет отличаться от входа в Windows, используемого при запуске из VS. У вас есть несколько вариантов:
- Предоставьте пользователю ASPNET необходимые права доступа к вашей базе данных
- Использовать проверку подлинности сервера Sql: настройте пользователя в базе данных как учетную запись SQL, введите имя пользователя и пароль в строку подключения и установите Integrated Security = False
- Измените идентификатор, под которым работает IIS, на тот, который имеет доступ к БД.
Могут быть и другие варианты, однако я думаю, что они наиболее распространены. Какой из них выбрать, зависит от архитектуры, на которой вы развертываете, лично я почти всегда обращаюсь к Sql Server Authentication с использованием имени пользователя и пароля. При необходимости файл web.config может быть зашифрован для обеспечения дополнительной безопасности.