Condividi tramite


Procedura: aggiornare le applicazioni RIA (Rich Internet Application) a Visual Studio 2012

In questo documento vengono fornite le istruzioni per il miglioramento dei tipi seguenti delle applicazioni Internet (RIA):

  • Applicazioni aziendali di Silverlight

  • Le applicazioni Silverlight o l'applicazione di navigazione Silverlight che utilizzano Servizi RIA personalizzati presenti nel servizio di autenticazione

  • Libreria della Classe dei Servizi RIA (Windows Communication Foundation).

  • Applicazione Web ASP.NET Dynamic Data.

Se è stato creato un RIA in una versione precedente di Visual Studio, è necessario aggiornare tale applicazione prima di aprirlo in Visual Studio 2012.

Applicazioni aziendali di Silverlight

Se si utilizza Visual Studio 2012 per aprire un progetto di applicazione aziendale C# o Visual Basic Silverlight creato in Visual Studio 2010 con SP1, è necessario modificare il progetto perché dipende da un'istanza di Microsoft SQL Server 2008 Express per l'autenticazione.Poiché SQL Server Express non è sempre disponibile in Visual Studio 2012, è necessario aggiornare il progetto per utilizzare i provider universali ASP.NET.

Nel file Web.Config, modificare le sezioni seguenti per utilizzare i provider universali, ad esempio il seguente codice di esempio:

Sezione della stringa di connessione:

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

Sezione relativa all'appartenenza:

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

Sezione di gestione dei ruoli:

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

sezione del profilo

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

Se si utilizza Visual Studio 2010 con SP1 per aprire un progetto di applicazione aziendale C# o Visual Basic Silverlight creato in Visual Studio 2012, è necessario modificare il progetto perché dipende da un'istanza per l'autenticazione su provider universali.È necessario aggiornare il progetto per utilizzare SQL Server Express.

Nel file Web.Config, modificare le sezioni seguenti per utilizzare SQL Server Express, come il seguente codice di esempio:

Sezione della stringa di connessione:

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

Sezione relativa all'appartenenza:

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

Sezione di gestione dei ruoli:

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

sezione del profilo:

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

Le applicazioni Silverlight o l'applicazione di navigazione Silverlight che utilizzano Servizi RIA personalizzati presenti nel servizio di autenticazione

Oltre ai passaggi elencati in precedenza in questo argomento per l'aggiornamento di un'applicazione aziendale di Silverlight creata in Visual Studio 2010 con SP1, è necessario modificare la propria appartenenza e provider di ruoli per ereditare dai provider predefiniti in System.Web.Providers.dll.

Nota di avvisoAttenzione

Il server di sviluppo Web in Visual Studio 2010 non supporta l'autenticazione di Windows.Se si configura il progetto Visual Studio 2012 per utilizzare l'autenticazione di Windows, è necessario rimuovere tali modifiche prima di eseguire la migrazione del progetto a Visual Studio 2010.Come alternativa, è possibile salvare le modifiche e utilizzare Internet Information Services (IIS) anziché il server di sviluppo Web in Visual Studio 2010.

Libreria della Classe dei Servizi RIA (Windows Communication Foundation).

È possibile utilizzare Visual Studio 2012 per aprire un progetto Libreria di classi dei servizi di Visual Basic WCF RIA o C# creato in Visual Studio 2010 con SP1 senza alcuna modifica.

È possibile utilizzare Visual Studio 2010 con SP1 per aprire un progetto C# o libreria di Classi dei Servizi WCF RIA di Visual Basic creato in Visual Studio 2012 con le seguenti modifiche.Visual Web Developer 2010 Express non supporta le cartelle della soluzione, utilizzate nei progetti Libreria di classi dei servizi WCF RIA in Visual Studio Express 2012 per il Web.Di conseguenza, si consiglia di eseguire una delle operazioni prima di eseguire la migrazione del tipo di progetto.

  • Spostare i progetti libreria di classi Silverlight e libreria di classi .NET dalla cartella Soluzione e rimuovere tale cartella.

  • Utilizzare una versione di Visual Studio 2010 diversa da Visual Web Developer 2010 Express per aprire i progetti creati in Visual Studio Express 2012 per il Web.

Applicazione Web ASP.NET Dynamic Data

Non è necessario modificare i progetti di applicazione Web C# o Visual Basic ASP.NET Dynamic Data creati in Visual Studio 2010 con SP1 per aprirli in Visual Studio 2012.

Vedere anche

Concetti

Compatibilità di Visual Studio 2012