Gewusst wie: Upgrade von umfangreichen Internetanwendungen auf Visual Studio 2012

Dieses Dokument enthält Anweisungen zum Aktualisieren der folgenden Typen umfassenden Internetanwendungen (RIAs) bereit:

  • Silverlight-Geschäftsanwendungen

  • Silverlight-Anwendungen oder Silverlight-Navigations-Anwendung, die benutzerdefinierten RIA Services-Authentifizierungsdienst verwendet

  • Klassenbibliothek Windows Communication Foundation RIA Services

  • Webanwendung für ASP.NET Dynamic Data Entities.

Wenn Sie ein RIA in einer früheren Version von Visual Studio erstellt haben, müssen Sie die Anwendung aktualisieren, bevor Sie sie in Visual Studio 2012 öffnen können.

Silverlight-Geschäftsanwendungen

Wenn Sie Visual Studio 2012 verwenden, um ein C#- oder Visual Basic-zuöffnen Silverlight-Geschäftsanwendungsprojekt, das in Visual Studio 2010 mit SP1 erstellt wurde, müssen Sie das Projekt ändern, da es von einer Instanz von Microsoft SQL Server 2008 Express für Authentifizierung abhängt.Da SQL Server Express nicht immer in Visual Studio 2012 verfügbar ist, müssen Sie das Projekt aktualisieren, universelle Anbieter ASP.NET stattdessen zu verwenden.

In der Web.Config-Datei ändern Sie die folgenden Abschnitte, um universelle Anbieter zu verwenden, wie der Beispielcode darstellt:

Verbindungszeichenfolgenabschnitt:

  <connectionStrings>
    <!--<add name="ApplicationServices"
         connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true"
         providerName="System.Data.SqlClient" />-->
    <add name="DefaultConnection" connectionString="Data Source=(LocalDB)\v11.0;Initial Catalog=aspnet-BusinessApplication1.Web-20111129040955;Integrated Security=True;MultipleActiveResultSets=True" providerName="System.Data.SqlClient"/>
  </connectionStrings>

Mitgliedschaftsabschnitt:

  <membership defaultProvider="DefaultMembershipProvider">
      <providers>
        <clear/>
        <!--<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationServices"
             enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false"
             maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10"
             applicationName="/" />-->
        <add name="DefaultMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/"/>
      </providers>
  </membership>

roleManager Abschnitt:

  <roleManager enabled="true" defaultProvider="DefaultRoleProvider">
      <providers>
        <clear/>
        <!--<add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="ApplicationServices" applicationName="/" /> -->
        <add name="DefaultRoleProvider" type="System.Web.Providers.DefaultRoleProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/"/>
        <add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/"/>
      </providers>
  </roleManager>

Profilabschnitt

  <profile defaultProvider="DefaultProfileProvider">
      <providers>
        <clear/>
        <!--<add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/"/>-->
        <add name="DefaultProfileProvider" type="System.Web.Providers.DefaultProfileProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/"/>
      </providers>
      <properties>
        <add name="FriendlyName"/>
      </properties>
  </profile>

Wenn Sie Visual Studio 2010 mit SP1 verwenden, um ein C#- oder Visual Basic-zuöffnen Silverlight-Geschäftsanwendungsprojekt, das in Visual Studio 2012 erstellt wurde, müssen Sie das Projekt ändern, da es von den universellen Anbieter für Authentifizierung abhängt.Sie müssen dieses Projekt aktualisieren, SQL Server Express zu verwenden.

In der Web.Config-Datei ändern Sie die folgenden Abschnitte, um SQL Server Express zu verwenden, wie der Beispielcode darstellt:

Verbindungszeichenfolgenabschnitt:

   <connectionStrings>
    <add name="ApplicationServices"
         connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true"
         providerName="System.Data.SqlClient" />
    <!--<add name="DefaultConnection" connectionString="Data Source=(LocalDB)\v11.0;Initial Catalog=aspnet-BusinessApplication1.Web-20111129040955;Integrated Security=True;MultipleActiveResultSets=True" providerName="System.Data.SqlClient"/>-->
   </connectionStrings>

Mitgliedschaftsabschnitt:

   <membership defaultProvider="AspNetSqlMembershipProvider">
      <providers>
        <clear/>
        <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationServices"
             enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false"
             maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10"
             applicationName="/" />
        <!--<add name="DefaultMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/"/>-->
      </providers>
   </membership>

roleManager Abschnitt:

    <roleManager enabled="true" defaultProvider="AspNetSqlRoleProvider">
      <providers>
        <clear/>
        <add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="ApplicationServices" applicationName="/" /> 
        <!--<add name="DefaultRoleProvider" type="System.Web.Providers.DefaultRoleProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/"/>-->
        <add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/"/>
      </providers>
   </roleManager>

Profilabschnitt:

   <profile defaultProvider="AspNetSqlProfileProvider">
      <providers>
        <clear/>
        <add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/"/>
        <!--<add name="DefaultProfileProvider" type="System.Web.Providers.DefaultProfileProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/"/>-->
      </providers>
      <properties>
        <add name="FriendlyName"/>
      </properties>
   </profile>

Silverlight-Anwendungen oder Silverlight-Navigations-Anwendung, die benutzerdefinierten RIA Services-Authentifizierungsdienst verwendet

Zusätzlich zu den Schritten, die zuvor für das Aktualisieren einer Silverlight-Geschäftsanwendung aufgeführt, die in erstellt wurde Visual Studio 2010 mit SP1, müssen Sie eine eigene Mitgliedschaft und Rollenanbieter ändern, um von der Standardanbieter im System.Web.Providers.dll zu erben.

WarnhinweisVorsicht

Der Internet-Entwicklungsserver in Visual Studio 2010 unterstützt keine Windows-Authentifizierung.Wenn Sie das Projekt Visual Studio 2012 konfigurieren, die Windows-Authentifizierung zu verwenden, müssen Sie diese Änderungen entfernen, bevor Sie das Projekt in Visual Studio 2010 migrieren.Alternativ können Sie die Änderungen und Internetinformationsdienste (IIS) anstelle des Internet-Entwicklungsservers verwenden in Visual Studio 2010 halten.

Klassenbibliothek Windows Communication Foundation RIA Services

Sie können Visual Studio 2012 verwenden, um ein WCF RIA Service-Klassenbibliotheksprojekt C# oder Visual Basic zu öffnen, das in Visual Studio 2010 mit SP1 ohne Änderung erstellt wurde.

Sie können Visual Studio 2010 mit SP1 verwenden, um ein WCF RIA Service-Klassenbibliotheksprojekt C# oder Visual Basic zu öffnen, das in Visual Studio 2012 mit den folgenden Änderungen erstellt wurde.Visual Web Developer 2010 Express unterstützt keine Projektmappenordner, die in den WCF RIA Service-Klassenbibliotheksprojekten in Visual Studio Express 2012 for Web verwendet werden.Daher wird empfohlen, einen der folgenden Schritte ausführen, bevor Sie diese Art des Projekts migrieren.

  • Verschieben Sie die Silverlight-Klassenbibliotheks- und .NET-Klassenbibliotheksprojekte aus dem Projektmappenordner aus, und löschen Sie dann diesen Ordner.

  • Verwenden Sie eine Version von Visual Studio 2010 anders Visual Web Developer 2010 Express, um Projekte zu öffnen, die in Visual Studio Express 2012 for Web erstellt wurden.

Webanwendung für ASP.NET Dynamic Data Entities

Sie müssen nicht, um C# oder Visual Basic-ASP.NETDynamic Data Entities-Webanwendungsprojekte zu ändern, die in Visual Studio 2010 mit SP1 erstellt werden, um sie in Visual Studio 2012 zu öffnen.

Siehe auch

Konzepte

Visual Studio 2012 – Kompatibilität