В основном хочу ответить на мой вопрос № 1 ниже, но хотелось бы получить больше знаний.
Я пытался использовать эти ресурсы во время моего расследования, но безуспешно:
http://social.msdn.microsoft.com/Forums/en/sqldatabaseengine/thread/f5eb164d-9774-4864-ae05-cac99740949b ( Для этой ошибки: Не удалось создать пользовательский экземпляр SQL Server из-за сбоя при получении пути к данным локального приложения пользователя. Убедитесь, что пользователь имеет локальный профиль пользователя на компьютере. Соединение будет закрыто. )
http://social.msdn.microsoft.com/forums/en-US/sqlexpress/thread/6dfdcc22-7a81-4e8f-a947-c1ce6982d4b3/ ( Для этой ошибки: В мастере базы данных отказано в разрешении CREATE DATABASE. Попытка присоединить базу данных с автоматическим именем для файла? Не удалась. База данных с тем же имя существует, или указанный файл не может быть открыт, или он находится на общем ресурсе UNC. )
Вопросы
1.) Почему эта ошибка возникает при запуске проекта Telerik Rad Controls для ASP.NET AJAX "Live Demos" с IIS 7 (Запуск Telerik Live Demos работает нормально с использованием ASP.NET Development Server с этой строкой подключения)
Не удалось создать пользовательский экземпляр SQL Server из-за сбоя при получении пути к данным локального приложения пользователя. Убедитесь, что у пользователя есть локальный профиль пользователя на компьютере. Соединение будет закрыто.
2.) Чем создание экземпляров SQL Server Express отличается в IIS 7 от сервера разработки ASP.NET и SSMSE
3.) Существуют ли определенные атрибуты строки подключения SQL, которые не разрешены при работе веб-сайта в разных контекстах (на основе # 2).
Окружающая среда:
Я не запускаю веб-приложение ASP.NET «Live Demos» .NET 3.5 через сервер разработки ASP.NET (функция, которая появляется в панели задач и выбирает порт для вас после нажатия кнопки воспроизведения в Visual Studio) , Это работает просто отлично! Я использую веб-сайт на IIS 7. SQL Server Express использует пользователя NETWORK SERVICE в Панели управления> Администрирование> Службы> SQL Server (SQLExpress).
Используя эту строку подключения, прилагаемую к демонстрационному проекту веб-приложения "Live Demos":
<add name="NorthwindConnectionString"
connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|Northwind.mdf;Integrated Security=True;User Instance=True"
providerName="System.Data.SqlClient" />
Я попытался установить "User Instance = False", но это просто выдает другую ошибку:
Запрещено разрешение CREATE DATABASE в хозяине базы данных. Попытка присоединить базу данных с автоматическим именем для файла? не удалось. База данных с тем же именем существует, или указанный файл не может быть открыт, или он находится на общем ресурсе UNC.
(где «?» - путь к файлу * .mdf - C: \ Users \\ MyDocuments \ Visual Studio 2008 \ Projects \ TelerikDemos \ Telerik \ RadControls для ASP.NET AJAX Q2 2011 \ Live Demos \ App_Data \ Northwind.mdf .. У некоторых из этих символов курсив переполнения стека нарушен, поэтому мне пришлось удалить этот путь)
Кто-то ответил мне на предыдущий вопрос, чтобы установить это «User Instance = False», но кажется, что пользовательские экземпляры не имеют никакого отношения к тому, используете ли вы SQL Express или нет. Пользовательские экземпляры - это просто функция SQL Express, которая позволяет очень непривилегированному пользователю размещать экземпляр базы данных в своем собственном пользовательском контексте.
Обратите внимание, что эта база данных Northwind хранится в файле * .mdf в папке App_Data (в корневом каталоге приложения «Live Demos») вместе с * .ldf (файл журнала). Ранее я пытался прикрепить файлы * .mdf в качестве реальных баз данных в папке «Базы данных» (в дереве обозревателя объектов SSMSE), но позже удалил их.
В корневой папке веб-приложения «Live Demos» (и вложенных папках / файлах) следующие пользователи имеют ВСЕ привилегии:
- IIS APPPOOL \ Telerik («Telerik» - это имя моего пула приложений в IIS 7 для этого сайта)
- IUSR
- СЕТЕВАЯ СЛУЖБА
Создание заметки для себя об этом запросе главной базы данных SQLExpress:
SELECT * FROM sys.dm_os_child_instances
Также пробовал различные комбинации разрешений * .mdf & * .ldf, одновременно меняя пользователя в службе Windows 7 SQL Server (SQLExpress) (Панель управления> Администрирование> Службы) .. и также перезапускал службу после выполнения этих меняется.
Воспроизвести:
загрузить Telerik Rad Controls для ASP.NET AJAX. Установите разрешения, которые я упомянул в папке «Live Demos» в папке «Program Files \ Telerik», измените версию .NET веб-приложения на .NET 3.5, замените их 3.5 файл web.config с обычным файлом web.config в этой папке , Вы должны использовать Visual Studio 2010, но я запускаю это в Visual Studio 2008 (с небольшой тяжелой работой, которую я сделал, потому что наша компания еще не на VS2010). Также переключите правильные сборки Bin35 в папку Bin «Live Demos». Скомпилируйте решение. Создайте веб-сайт IIS 7. Добавьте проверку подлинности Windows. Включена анонимная аутентификация и аутентификация Windows .. все остальные отключены. Установите пул приложений для использования Classic и 32 bit.
Затем перейдите по этому URL и щелкните изображение «Первый взгляд».
http://localhost/combobox/examples/overview/defaultcs.aspx
====================
По запросу будет предоставлено больше доказательств.