Visual Studio 2013 и веб-инструмент настройки ASP.NET

Я использую Visual Studio 2013 и, как вы, вероятно, знаете, не существует инструмента веб-конфигурации ASP.NET. Я хотел, как всегда, создавать быстрые роли и т. Д. Я попытался включить его, используя эту статью: http://blogs.msdn.com/b/webdev/archive/2013/08/19/asp-net-web-configuration-tool-missing-in-visual-studio-2013.aspx?PageIndex=2. Но я получаю ошибку "Неверный путь к приложению". Какие-либо решения этой ошибки или обходные пути?

4 ответа

Решение

На консоли скопируйте и вставьте именно то, что написано здесь:

"C:\Program Files\IIS Express\iisexpress.exe" /path:c:\windows\Microsoft.NET\Framework\v4.0.30319\ASP.NETWebAdminFiles /vpath:"/asp.netwebadminfiles" /port:8089 /clr:4.0 /ntlm

Не имеет значения, открываете ли вы cmd.exe с правами администратора или нет, просто скопируйте и вставьте приведенный выше код в консоль и не выходите с "q", пока не закончите!

Затем откройте окно браузера и напишите это в адресной строке:

http://localhost:8089/asp.netwebadminfiles/default.aspx?applicationPhysicalPath=[Exact_Project_Path]\&applicationUrl=/

Обязательно скопируйте и вставьте путь вашего проекта из проводника Windows, как он есть, он будет работать;)

Я надеюсь, что Microsoft добавляет это обратно к следующему обновлению VS2013! Никому не удобно копировать и вставлять коды просто для обработки членства, как мы делали в прошлом...

Надеюсь, это поможет!

ВАЖНОЕ РЕДАКТИРОВАНИЕ: Извините, я только что понял, что это имеет значение, если вы запускаете консоль с правами администратора. Не делай этого. Если у консоли есть права администратора, инструмент веб-конфигурации показывает эту ошибку на странице "Безопасность":

Возникла проблема с выбранным вами хранилищем данных. Это может быть вызвано неверным именем или учетными данными сервера или недостаточным разрешением. Это также может быть вызвано тем, что функция диспетчера ролей не включена. Нажмите кнопку ниже, чтобы перейти на страницу, где вы можете выбрать новое хранилище данных. Следующее сообщение может помочь в диагностике проблемы: Доступ к пути 'C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\1c3fef5c\2180c7f9\hash' запрещен.

Если вас просят ввести имя пользователя и пароль, сделайте следующее:

  1. Откройте Firefox и введите about:config в качестве URL
  2. В поле "Тип фильтра" в "ntlm"
  3. Дважды щелкните "network.automatic-ntlm-auth.trusted-uris", введите "localhost" и нажмите Enter

источник: http://forums.codecharge.com/posts.php?post_id=81959

Это работало для меня до создания роли безопасности, а затем пользователя, но затем, когда я пытаюсь запустить свой веб-сайт, появляется следующее сообщение HTTP Error 403.14 - Forbidden

Веб-сервер настроен так, чтобы не перечислять содержимое этого каталога. Наиболее вероятные причины: • Документ по умолчанию не настроен для запрошенного URL, и просмотр каталога не включен на сервере.

Что вы можете попробовать: • Если вы не хотите включать просмотр каталогов, убедитесь, что документ по умолчанию настроен и что файл существует. • Включить просмотр каталогов. 1. Перейдите в каталог установки IIS Express. 2. Запустите appcmd set config /section:system.webServer/directoryBrowse /enabled:true, чтобы включить просмотр каталогов на уровне сервера. 3. Запустите appcmd set config ["SITE_NAME"] /section:system.webServer/directoryBrowse /enabled:true, чтобы включить просмотр каталогов на уровне сайта.

• Убедитесь, что для атрибута configuration/system.webServer/directoryBrowse@enabled установлено значение true в файле конфигурации сайта или приложения.

Существует утилита с открытым исходным кодом под названием "Диспетчер учетных данных для WCF", которую я скачал отсюда. Для работы нужны следующие конфигурации.
Для конфигурации вам необходимо отредактировать файл конфигурации проекта "CredentialServiceHost" следующим образом:

    *<?xml version="1.0"?>
<configuration>
    <connectionStrings>
    <clear />
        <add name="AspNetDbConnectionString" connectionString="[Your data base connection string]" providerName="System.Data.SqlClient"/>
    <add name="LocalSqlServer" connectionString="[Your data base connection string]" providerName="System.Data.SqlClient"/>


  </connectionStrings>
    <system.web>
        <authentication mode="None"/>
  <roleManager enabled="true"/>
    </system.web>
    <system.serviceModel>
        <services>
            <service name="AspNetSqlProviderService" behaviorConfiguration="MEX Enabled">
                <endpoint address="" binding="wsHttpBinding" bindingConfiguration="TransactionalWS" contract="IApplicationManager"/>
                <endpoint address="" binding="wsHttpBinding" bindingConfiguration="TransactionalWS" contract="IMembershipManager"/>
                <endpoint address="" binding="wsHttpBinding" bindingConfiguration="TransactionalWS" contract="IPasswordManager"/>
                <endpoint address="" binding="wsHttpBinding" bindingConfiguration="TransactionalWS" contract="IRoleManager"/>
                <endpoint address="" binding="wsHttpBinding" bindingConfiguration="TransactionalWS" contract="IUserManager"/>
            </service>
        </services>
        <bindings>
            <wsHttpBinding>
                <binding name="TransactionalWS" transactionFlow="true">
                    <reliableSession enabled="True"/>
                </binding>
            </wsHttpBinding>
        </bindings>
      <behaviors>
         <serviceBehaviors>
            <behavior name="MEX Enabled">
               <serviceMetadata httpGetEnabled="true"/>
            </behavior>
         </serviceBehaviors>
      </behaviors>
    </system.serviceModel>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup></configuration>

а для проекта "CredentialsManager" вы должны использовать следующую конфигурацию:

<?xml version="1.0"?>
<configuration>
   <configSections>
      <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
         <section name="CredentialsManagerClient.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false"/>
      </sectionGroup>
   </configSections>
   <applicationSettings>
      <CredentialsManagerClient.Properties.Settings>
         <setting name="AspNetSqlProviderService" serializeAs="String">
            <value>http://localhost:8000</value>
         </setting>
      </CredentialsManagerClient.Properties.Settings>
   </applicationSettings>
   <system.serviceModel>
      <client>
         <endpoint address="http://localhost:8000/" binding="wsHttpBinding" bindingConfiguration="TransactionalWS" contract="IApplicationManager"/>
         <endpoint address="http://localhost:8000/" binding="wsHttpBinding" bindingConfiguration="TransactionalWS" contract="IMembershipManager"/>
         <endpoint address="http://localhost:8000/" binding="wsHttpBinding" bindingConfiguration="TransactionalWS" contract="IPasswordManager"/>
         <endpoint address="http://localhost:8000/" binding="wsHttpBinding" bindingConfiguration="TransactionalWS" contract="IRoleManager"/>
         <endpoint address="http://localhost:8000/" binding="wsHttpBinding" bindingConfiguration="TransactionalWS" contract="IUserManager"/>
      </client>
      <bindings>
         <wsHttpBinding>
            <binding name="TransactionalWS" transactionFlow="true">
               <reliableSession enabled="True"/>
            </binding>
         </wsHttpBinding>
      </bindings>
   </system.serviceModel>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup></configuration>

Запустите файл "CredentialsServiceHost.exe" от имени администратора, затем запустите файл "CredentialsManager.exe".

Другие вопросы по тегам