Visual Studio 2013 and ASP.NET Web Configuration Tool

Visual StudioVisual Studio-2013

Visual Studio Problem Overview


I'm using Visual Studio 2013 and as you probably know there is no ASP.NET Web Configuration Tool. I wanted as always make fast roles etc. I tried enable it using this article: http://blogs.msdn.com/b/webdev/archive/2013/08/19/asp-net-web-configuration-tool-missing-in-visual-studio-2013.aspx?PageIndex=2#comments . But I'm getting "Invalid application path" error. Any solutions to this error or workarounds?

Visual Studio Solutions


Solution 1 - Visual Studio

On the console, copy and paste exactly what is written here:

"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

It doesn't matter if you open cmd.exe with administrator privileges or not, just copy paste the above code on the console and don't exit with "q" until you're done!

Then open a browser window and write this on the address bar:

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

Be sure to copy & paste your project path from windows explorer as it is, it will work ;)

I hope Microsoft adds this back to the next update of VS2013! It's not convenient for anybody to copy & paste codes around just to handle membership like we did in the past...

Hope that helps!

IMPORTANT EDIT: I am sorry, I just realized that it matters if you start the console with administrator privileges. Don't do that. If console has administrator rights, the Web Configuration Tool shows this error on the Security page:

> There is a problem with your selected data store. This can be caused by an invalid server name or credentials, or by insufficient > permission. It can also be caused by the role manager feature not > being enabled. Click the button below to be redirected to a page where > you can choose a new data store. The following message may help in > diagnosing the problem: Access to the path > 'C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET > Files\root\1c3fef5c\2180c7f9\hash' is denied.

Solution 2 - Visual Studio

If you're being asked for username and password, do this:

  1. Open up Firefox and type in about:config as the url
  2. In the Filter Type in "ntlm"
  3. Double click "network.automatic-ntlm-auth.trusted-uris" and type in "localhost" and hit enter

source: http://forums.codecharge.com/posts.php?post_id=81959

Solution 3 - Visual Studio

This did work for me till creating a security role and then a user but then when I try to run my website get the following message HTTP Error 403.14 - Forbidden

The Web server is configured to not list the contents of this directory. Most likely causes: •A default document is not configured for the requested URL, and directory browsing is not enabled on the server.

Things you can try: •If you do not want to enable directory browsing, ensure that a default document is configured and that the file exists. • Enable directory browsing. 1.Go to the IIS Express install directory. 2.Run appcmd set config /section:system.webServer/directoryBrowse /enabled:true to enable directory browsing at the server level. 3.Run appcmd set config ["SITE_NAME"] /section:system.webServer/directoryBrowse /enabled:true to enable directory browsing at the site level.

•Verify that the configuration/system.webServer/directoryBrowse@enabled attribute is set to true in the site or application configuration file.

Solution 4 - Visual Studio

There is a open source utility named "Credentials Manager for WCF" which I downloaded from here. It needs below configurations to work.
For configurations, you should edit configuration file of project "CredentialServiceHost" as follows:

    *<?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>

and for project "CredentialsManager" you should use following configuration:

<?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>

Run the "CredentialsServiceHost.exe" file as an administrator then run the "CredentialsManager.exe" file.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionPlacekView Question on Stackoverflow
Solution 1 - Visual StudioilterView Answer on Stackoverflow
Solution 2 - Visual Studiopatr1c1aView Answer on Stackoverflow
Solution 3 - Visual StudioVikas SharmaView Answer on Stackoverflow
Solution 4 - Visual StudioAli FattahianView Answer on Stackoverflow