LightSwitch HTML Client Tutorial - Contoso Moving

This tutorial walks through building out the mobile client used by Contoso Movers’ planning specialists. This sample was created for Visual Studio 2012, but it will also upgrade and run in Visual Studio 2013.

VB.NET (6.3 MB)
 
 
 
 
 
4.5 Star
(13)
16,364 times
Add to favorites
12/6/2013
E-mail Twitter del.icio.us Digg Facebook

Solution explorer

VB.NET
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <appSettings>
    <add key="UserCodeAssemblies" value="Application.Common.dll;Application.Server.dll" />
    <add key="ExtensionAssemblies" value="Microsoft.LightSwitch.Extensions.Server.dll" />
    <!-- A value of true will enable diagnostic logging on the server -->
    <add key="Microsoft.LightSwitch.Trace.Enabled" value="false" />
    <!-- A value of true only lets local access to Trace.axd -->
    <add key="Microsoft.LightSwitch.Trace.LocalOnly" value="true" />
    <!-- The valid values for the trace level are: None, Error, Warning, Information, Verbose -->
    <add key="Microsoft.LightSwitch.Trace.Level" value="Information" />
    <!-- A value of true will indicate that logging sensitive information is okay -->
    <add key="Microsoft.LightSwitch.Trace.Sensitive" value="false" />
    <!-- The semi-colon separated list of categories that will be enabled at the specifed trace level -->
    <add key="Microsoft.LightSwitch.Trace.Categories" value="Microsoft.LightSwitch" />
    <!-- A value of true will indicate http requests should be re-directed to https -->
    <add key="Microsoft.LightSwitch.RequireEncryption" value="false" />
    <!-- If no admin user exists, create an admin user with this user name -->
    <add key="Microsoft.LightSwitch.Admin.UserName" value="" />
    <!-- When creating an admin user with Forms auth, use this as the full name -->
    <add key="Microsoft.LightSwitch.Admin.FullName" value="" />
    <!-- When creating an admin user with Forms auth, use this as the pasword -->
    <add key="Microsoft.LightSwitch.Admin.Password" value="" />
    <add key="ApplicationCulture" value="en-us" />
  </appSettings>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.LightSwitch" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="10.0.0.0" newVersion="10.0.11.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.LightSwitch.ExportProvider" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="10.0.0.0" newVersion="10.0.11.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.LightSwitch.Model.Xaml" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="10.0.0.0" newVersion="11.0.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
  <connectionStrings>
    <add name="_IntrinsicData" connectionString="Data Source=|SqlExpressInstanceName|;AttachDbFilename=|ApplicationDatabasePath|;Integrated Security=True;Connect Timeout=30;MultipleActiveResultSets=True" />
  </connectionStrings>
  <system.web>
    <!-- LightSwitch trace.axd handler -->
    <trace enabled="true" localOnly="false" requestLimit="40" writeToDiagnosticsTrace="false" traceMode="SortByTime" mostRecent="true" />
    <httpHandlers>
      <add verb="GET" path="trace.axd" type="Microsoft.LightSwitch.WebHost.Implementation.TraceHandler,Microsoft.LightSwitch.Server.Internal,Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
    </httpHandlers>
    <httpModules>
      <add name="DomainServiceModule" type="System.ServiceModel.DomainServices.Hosting.DomainServiceHttpModule, System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
      <add name="LightSwitchModule" type="Microsoft.LightSwitch.WebHost.Implementation.LightSwitchHttpModule,Microsoft.LightSwitch.Server.Internal,Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
    </httpModules>
    <compilation debug="false" targetFramework="4.0">
      <assemblies>
        <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
        <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
        <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
        <add assembly="Microsoft.LightSwitch.Base.Server, Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
      </assemblies>
    </compilation>
    <authentication mode="Forms">
      <forms name="Contoso Moving" />
    </authentication>
    <pages validateRequest="false">
      <controls>
        <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
      </controls>
    </pages>
    <!-- Setting maxRequestLength to be much greater than default 4096 so that large data may be uploaded e.g. images, docs -->
    <httpRuntime requestPathInvalidCharacters="" requestValidationMode="2.0" maxRequestLength="102400" />
    <membership defaultProvider="AspNetMembershipProvider">
      <providers>
        <clear />
        <add name="AspNetMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="_IntrinsicData" applicationName="Contoso Moving" requiresUniqueEmail="false" requiresQuestionAndAnswer="false" />
      </providers>
    </membership>
    <roleManager enabled="True" defaultProvider="AspNetRoleProvider">
      <providers>
        <clear />
        <add name="AspNetRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="_IntrinsicData" applicationName="Contoso Moving" />
      </providers>
    </roleManager>
    <profile enabled="True" defaultProvider="AspNetProfileProvider">
      <providers>
        <clear />
        <add name="AspNetProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="_IntrinsicData" applicationName="Contoso Moving" />
      </providers>
      <properties>
        <add name="FullName" />
      </properties>
    </profile>
  </system.web>
  <system.codedom>
    <compilers>
      <compiler language="c#;cs;csharp" extension=".cs" warningLevel="4" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
        <providerOption name="CompilerVersion" value="v4.0" />
        <providerOption name="WarnAsError" value="false" />
      </compiler>
    </compilers>
  </system.codedom>
  <system.webServer>
    <validation validateIntegratedModeConfiguration="false" />
    <modules runAllManagedModulesForAllRequests="true">
      <add name="DomainServiceModule" preCondition="managedHandler" type="System.ServiceModel.DomainServices.Hosting.DomainServiceHttpModule, System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
      <add name="LightSwitchModule" preCondition="managedHandler" type="Microsoft.LightSwitch.WebHost.Implementation.LightSwitchHttpModule,Microsoft.LightSwitch.Server.Internal,Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
    </modules>
    <handlers>
      <!-- LightSwitch trace.axd handler -->
      <add name="LightSwitchTrace" path="trace.axd" verb="*" type="Microsoft.LightSwitch.WebHost.Implementation.TraceHandler,Microsoft.LightSwitch.Server.Internal,Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
    </handlers>
    <defaultDocument>
      <files>
        <clear />
        <add value="default.htm" />
      </files>
    </defaultDocument>
    <security>
      <requestFiltering allowDoubleEscaping="true" />
    </security>
  </system.webServer>
  <system.serviceModel>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
    <behaviors>
      <serviceBehaviors>
        <behavior>
          <dataContractSerializer maxItemsInObjectGraph="6553600" />
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <bindings>
      <webHttpBinding>
        <binding maxReceivedMessageSize="6553600" />
      </webHttpBinding>
    </bindings>
  </system.serviceModel>
  <uri>
    <schemeSettings>
      <add name="http" genericUriParserOptions="DontUnescapePathDotsAndSlashes" />
      <add name="https" genericUriParserOptions="DontUnescapePathDotsAndSlashes" />
    </schemeSettings>
  </uri>
</configuration>