Почему «Я не смог создать пользовательский экземпляр SQL Server» в .NET 4, а не .NET 2? - PullRequest
1 голос
/ 10 октября 2010

Я создал на своей локальной машине с targetframework 4 в visual studio простой веб-сайт, использующий шаблон по умолчанию (здесь решается проблема с css API Карт Google в главной странице ASP.NET: почему он остается пустым? )

Я загрузил его на свой сервер IIS 7, который был сначала настроен для .NET 2, поэтому в web.config я удалил строку

<compilation debug="false" targetFramework="4.0" />

, чтобы она могла работать в .NET2.

До этого все было в порядке.

Затем я отредактировал в ISS7 свой веб-сайт для использования .NET 4. При повторном тестировании сайта я получил эту ошибку:

Failed to generate a user instance of SQL Server due to 
failure in retrieving the user's local application data path.

Я не говорил вам, что я еще не установил SQL-сервер, поэтому это сообщение может быть нормальным, но почему я не получил его с .NET 2?Можно ли что-то настроить в .NET 4, чтобы эта ошибка игнорировалась, как в .NET 2?

Ответы [ 2 ]

1 голос

Довольно сложно понять, что вы делаете и почему

«Я не говорил вам, что еще не установил SQL-сервер»

Visual Studio (VS) устанавливает SQL Server Express (по умолчанию настроен только для локального использования, удаленный должен быть включен), но IIS7, ASP.NET или Windows не

«Я создал на своей локальной машине с targetframework 4 в visual studio простой веб-сайт с использованием шаблона по умолчанию»

Если вы создали проект, ориентированный на ASP.NET4.0, вы не сможете запустить его с ASP.NET 2.0 (вы можете сделать это наоборот, чтобы запустить в 4.0, созданный для 2.0)

Какой шаблон по умолчанию? Они настраиваются в VS после или во время настройки VS

«Не удалось создать пользовательский экземпляр SQL Server»

Пользовательский экземпляр SQL Server создается во время создания проекта ASP.NET в VS2010 с ориентацией 4.0, которого у вас нет на загруженном компьютере (вы можете проверить, что папки и файлы для членства в ASP.NET создаются с помощью пользовательского экземпляра SQL Server). Они не созданы проектом с таргетингом 2.0

Какой смысл создавать проект ASP.NET 4.0 и затем тестировать его на компьютере ASP.NET2.0? Создайте его, ориентируясь на 2.0 с нуля.

- Обновление:
Это общий программный принцип, называемый обратной совместимостью - программное обеспечение знает и может приспособиться к предыдущим (в 2.0 для 3.0, 1.0, 1.1), но не к будущим различиям (в 2.0 для 4.0)
http://en.wikipedia.org/wiki/Backward_compatibility

Вы можете создать проект с таргетингом 2.0 и позже сменить его на 4.0 или вообще не использовать Visual Studio, если вам это неудобно.

1 голос
/ 11 октября 2010

Когда пользователь впервые входит в систему, на диске создается профиль, например, в папке c: \ users \ username.

Если вы находитесь в контексте безопасности пользователя, который никогда не входил на эту машину способом, создающим профиль, и вы пытаетесь записать информацию в профиль, вы получаете что-то вроде «каталог не существует, ошибка» ».

Должно быть различие в контексте безопасности между .net 2 и 4.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...