На виртуальном ПК, на котором вы установили SqlServer Express 2008, проверьте, существует ли имя группы, похожее на это: 'SQLServer2005MSSQLUser $ PIETRO $ SQLEXPRESS'.
Перейдите в раздел «Локальные пользователи и группы» в разделе «Управление компьютером» этого виртуального компьютера.
Описание группы будет выглядеть примерно так: «Члены группы имеют необходимые права доступа и привилегии, которые должны быть назначены в качестве учетной записи для входа в систему для ассоциированного экземпляра SQL Server и полнотекстового поиска SQL Server в SQL Server 2005».
Чтобы иметь возможность подключиться к моему локальному SQL Express 2005 в своей записной книжке, мне пришлось добавить учетную запись Windows, которую я использую для входа в эту записную книжку, в упомянутую группу окон. И мне пришлось использовать эту строку подключения:
"Data Source=PIETRO\SQLEXPRESS;Initial Catalog=irisdb;Integrated Security=True;"
Важно отметить часть «Integrated Security = True». Это означает, что SQL Express будет аутентифицировать мою попытку подключения, используя мою учетную запись Windows.
Если вы не используете встроенную защиту в строке подключения, значит, вы используете аутентификацию SQLServer, и это означает, что идентификатор пользователя и пароль в строке подключения должны быть действительным именем входа SQL Server:
User ID=xxxx;Password=xxxx
Я помню, что создавать учетные записи в SQL Express было непросто, поскольку SQL Express 2005 не поставляется с этим инструментом управления, но, если он у вас есть, дважды проверьте значения идентификатора пользователя и пароля, которые вы используете в своем приложении. Строка подключения для Dev является действительным логином в вашем SqlExpress 2008.
Я предполагаю, почему веб-приложение подключается к DEV Sql Express, так как веб-приложение, скорее всего, работает в контексте учетной записи компьютера ASP.NET, и каким-то образом ваше устройство SQL Express 2008 успешно аутентифицирует эту учетную запись.
В итоге ....
Если вы используете встроенную защиту, укажите ее в строке подключения и добавьте учетную запись Windows, под которой работает ваше консольное приложение, в группу sql express на виртуальном ПК.
Если вы используете проверку подлинности сервера sql, то идентификатор пользователя и пароль в строке подключения должны быть действительным именем входа sql express.
Удачи!