アーカイブ

Archive for 2010年8月

LightSwitchの裏側を探る 3:ビルドの実行と選択リスト、計算項目の追加

前の記事でデータベース内にテーブルがどのタイミングで追加されるのかがわからない、と書きましたが、実はビルドすれば追加される、ということがわかりました。
前の記事の直後にビルドを実行すると、下記のように「会員テーブルSet」という名前のテーブルが追加されます。
テーブルの追加

そしてこのとき、Bin\Dataフォルダに存在していたSchemaChange.xmlファイルが消えます。
どうも、IDE上で行ったスキーマ変更の情報が一旦SchemaChange.xmlに書き込まれ、ビルド時に実際のデータベースを変更するとこのSchemaChange.xmlファイルが消える、という動きになっているようです。
こんなことがわかったのはあるいみケガの功名かも。

さて、次に作成したテーブルのなかで、「性別」項目を男性/女性が選べるように設定してみます。
「性別」の項目を選び、プロパティからChoice Listリンクをクリックします。
選択リストの作成   

選択リストを設定するダイアログが表示されるので、ここで以下のように登録します。
選択リスト設定

これだけでOKなんですが、この「男性/女性」といった情報はどこに保存されるか、というと、、、
Dataフォルダの ApplicationDefinition.lsml 内に格納されます。
「性別」に関する情報部分が以下のようになっていました。

———————————————————————————————————-

<EntityProperty Name="性別" PropertyType="Microsoft.LightSwitch:Int32">
    <EntityProperty.Attributes>
        <Required />
        <NotSearchable />
        <SupportedValue DisplayName="男性" Value="1" />
        <SupportedValue DisplayName="女性" Value="2" />
    </EntityProperty.Attributes>
</EntityProperty>

———————————————————————————————————-

テキストエディタでフォルダ内のファイルに対して全検索かけてみましたけど、このフォルダにしか「男性/女性」の文字はありません。
結構、このApplicationDefinition.lsmlファイル、重要っぽいです。

 

さて、次に行ったのは、計算によって値を表示するデータ項目の追加。
誕生日から計算して年齢を表示する項目を追加してみます。
年齢を計算項目として追加

テーブルに「年齢」項目を追加し、プロパティで Is Computed にチェックを入れて Edit Method リンクをクリックします。
IDE内にソースコードを記述する画面が表示されるので、以下のようにプログラムを追記しました。
計算ロジック

会員テーブルクラスの Partial なソースとしてプログラムを記述することになります。
こうなってくると、「会員テーブル」という名前をつけたのが間違いだったかなぁ。
「会員」としておくとテーブル名も「会員Set」となり、またクラスも「会員クラス」だったわけで。。。
どうもレコード1つにたいしての名前をつけたほうが良かったようですね。
まぁ、いまさらしょうがないので、このまま続けます。

さて、このプログラムを保存すると、Commonフォルダ内に UserCode という名前のフォルダが作成され、そこに上記の「会員テーブル.cs」ファイルが追加されました。
どうもこの「UserCode」フォルダが開発者が追記したプログラムの置き場所になりそうです。

さて、データ構造を触るのはここまでにして、次回は画面を追加してみようと思います。
そのまえにここまでで他に追加されてるプログラムがありました。

Common\GeneratedArtifacts の下のDataRuntime.csとServer\GeneratedArtifacts の下のDataService.cs の内容が生成されています。
データを取り出す部分のコードや取得/設定時のパーシャルメソッドの定義が行われているようです。
LightSwitch用のdll内の定義クラスが使われているため、どうにもソースが読みにくかったりするのですが。。。

広告
カテゴリー:LightSwitch, Silverlight

LightSwitchの裏側を探る 4:スクリーンの追加

さて、とうとうデータ側の準備がととのったので、とうとう画面を追加してみます。
といっても、Add Screenから Editable Grid Screen を選択してScreen Dataとして会員テーブルSetを設定するだけ。
スクリーン選択

まぁ、これだけだとちょっとさびしいので、Screenの操作画面から画面名を「会員一覧」に変更します。
画面名変更  

しかし、この画面がUIの設定画面なんですよねぇ。
部品の単位で操作していくので、慣れれば操作はできますが、、、これでUIイメージしろっていっても。。。

ま、でもとりあえずこれだけで動きます。
実行させるとこんな感じ。
起動時

操作用の「追加、編集、削除」とかが日本語になってますね。「Excelにエクスポート」とかも。
このままでデータの追加とかも可能です。
データ追加

あとはデータ溜め込んで、検索かけて、と利用していけばいい、ということになります。

Screenを追加して、ソースのほうはどう変わったか、というとServerGenerated\GeneratedArtifactsフォルダにサーバ上のエンティティのクラスやドメインサービスのソースが生成されます。
また、ClientGenerated\GeneratedArtifactsフォルダにはクライアント側のデータコンテキスト、そしてClient\GeneratedArtifactsフォルダにはスクリーンの呼び出しコードとしてScreen.csが作成されています。

いままでの操作全体を含めて、とにかくGeneratedArtifacts、という名前のフォルダにソースがどんどん生成されていきますね。

ただ、Screen.csみてもXAMLやXAMLに相当する画面を生成するコードが書いてあるわけじゃありません。
ここではやっぱりLightSwitch用のクラスを使って画面を生成する枠を作っているだけみたいで、どうもその中の設定、つまりUIの設定画面で操作している部分も全部 ApplicationDefinition.lsml に含まれているみたいです。

この状態だと、直接ソースをいじって画面の表示を修正する、なんてことは簡単にはできなさそうです。
独自のUIコントロールを追加して利用するための方法はドキュメントやツールキットでも紹介されていますから、その基本通りに用意されている口を通して拡張するしかない、というのが現時点での認識だったりします。

カテゴリー:LightSwitch, Silverlight

LightSwitchの裏側を探る 2:テーブルスキーマの作成

LightSwitchでは、まずデータの定義をすることになりますが、その前にアプリケーション全体のプロパティの設定を確認しました。

Cultureの設定の標準は英語(米国)になっていたので、Japaneseにします。
Cultureの設定

また、アプリケーションのタイプのデフォルトが2-tierだったので、3-tierにしました。
3-tierの設定

このように設定を変更したうえで、テーブル定義を日本語を使って行ってみました。
テーブル追加

定義した内容はとりあえずこの画面で見えてるとおり。
まだプロパティを使って何か設定とかはしていない状態です。

このような設定をしたところ、アプリケーションのルートフォルダ直下のBin\Dataフォルダに「SchemaChange.xml」ファイルが作成されました。
このファイルの内容は以下のようになっていました。

———————————————————————————————————-

<?xml version="1.0" encoding="utf-8"?>
<ApplicationSchemaChange xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance&quot; xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;
  <EntityChanges>
    <EntitySchemaChange IsNew="true" OriginalName="会員テーブルSet">
      <PropertyChanges />
    </EntitySchemaChange>
  </EntityChanges>
</ApplicationSchemaChange>

———————————————————————————————————-

また、アプリケーションのルートフォルダ直下のDataフォルダ内のApplicationDefinition.lsmlの内容が次のように書き換えられました。

———————————————————————————————————-

<?xml version="1.0" encoding="utf-8" ?>
<ModelFragment xmlns="http://schemas.microsoft.com/LightSwitch/2010/xaml/model&quot;
               xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"&gt;
  <Application Name="Application1"
                         Version="1.0.0.0"
                         DefaultNavigationItem="Application1:/NavigationItems[Tasks]"
                         Shell="Microsoft.LightSwitch:Standard"
                         Theme="Microsoft.LightSwitch:Blue">
    <Application.NavigationItems>
      <ApplicationNavigationGroup Name="Tasks">
        <ApplicationNavigationGroup.Attributes>
          <DisplayName Value="Tasks" />
        </ApplicationNavigationGroup.Attributes>
      </ApplicationNavigationGroup>
      <ApplicationNavigationGroup Name="Administration">
        <ApplicationNavigationGroup.Attributes>
          <DisplayName Value="Administration" />
        </ApplicationNavigationGroup.Attributes>
        <ApplicationNavigationLink Command="Microsoft.LightSwitch.Security:/Commands[ScreenCommandShowUsersScreen]"
                                   Name="UsersScreen" />
        <ApplicationNavigationLink Command="Microsoft.LightSwitch.Security:/Commands[ScreenCommandShowRolesScreen]"
                                   Name="RolesScreen" />
      </ApplicationNavigationGroup>
    </Application.NavigationItems>
    <Application.References>
      <ModuleReference Module="Microsoft.LightSwitch.Security" />
            <ModuleReference Module="Microsoft.LightSwitch.Extensions" />
        </Application.References>
  </Application>

  <EntityContainerGroup Name="DataWorkspace">
    <EntityContainerGroupProperty EntityContainer="Microsoft.LightSwitch.Security:SecurityDataService"
                             Name="SecurityDataService">
      <EntityContainerGroupProperty.Attributes>
        <Generated />
        <DisplayName Value="Security Data Service" />
        <Description Value="Service that provides access to security-related data." />
      </EntityContainerGroupProperty.Attributes>
    </EntityContainerGroupProperty>
        <EntityContainerGroupProperty EntityContainer="Application1:ApplicationData"
                                      Name="ApplicationData" />
    </EntityContainerGroup>
    <EntityContainer IsIntrinsic="True"
                     Name="ApplicationData">
        <SubmitOperation Name="SaveChanges" />
        <EntitySet CanDelete="True"
                   CanInsert="True"
                   CanUpdate="True"
                   EntityType="Application1:会員テーブル"
                   Name="会員テーブルSet" />
        <QueryOperation Name="会員テーブルSet_Single"
                        ReturnType="Application1:会員テーブル">
            <QueryOperation.Attributes>
                <Generated />
                <Description Value="Returns the entity whose identity is specified by the parameter(s)." />
            </QueryOperation.Attributes>
            <QueryOperation.FilterExpression>
                <QueryFilterExpressionTree>
                    <BinaryExpression NodeType="Equal">
                        <BinaryExpression.Left>
                            <ChainExpression NodeType="Chain">
                                <MemberExpression Member="Application1:会員テーブル/Properties[Id]"
                                                  NodeType="MemberAccess" />
                            </ChainExpression>
                        </BinaryExpression.Left>
                        <BinaryExpression.Right>
                            <ParameterExpression NodeType="Parameter"
                                                 Parameter="Application1:ApplicationData/Members[会員テーブルSet_Single]/Parameters[Id]" />
                        </BinaryExpression.Right>
                    </BinaryExpression>
                </QueryFilterExpressionTree>
            </QueryOperation.FilterExpression>
            <QueryOperation.Source>
                <QuerySourceExpressionTree>
                    <MemberExpression Member="Application1:ApplicationData/Members[会員テーブルSet]"
                                      NodeType="MemberAccess" />
                </QuerySourceExpressionTree>
            </QueryOperation.Source>
            <QueryOperationParameter Name="Id"
                                     ParameterType="Microsoft.LightSwitch:Int32?">
                <QueryOperationParameter.Attributes>
                    <Description Value="The value of the ‘Id’ key property of the entity to retrieve." />
                </QueryOperationParameter.Attributes>
            </QueryOperationParameter>
        </QueryOperation>
        <QueryOperation Name="会員テーブルSet_SingleOrDefault"
                        ReturnType="Application1:会員テーブル">
            <QueryOperation.Attributes>
                <Generated />
                <Description Value="Returns the entity whose identity is specified by the parameter(s) or null if no such entity exists." />
            </QueryOperation.Attributes>
            <QueryOperation.FilterExpression>
                <QueryFilterExpressionTree>
                    <BinaryExpression NodeType="Equal">
                        <BinaryExpression.Left>
                            <ChainExpression NodeType="Chain">
                                <MemberExpression Member="Application1:会員テーブル/Properties[Id]"
                                                  NodeType="MemberAccess" />
                            </ChainExpression>
                        </BinaryExpression.Left>
                        <BinaryExpression.Right>
                            <ParameterExpression NodeType="Parameter"
                                                 Parameter="Application1:ApplicationData/Members[会員テーブルSet_SingleOrDefault]/Parameters[Id]" />
                        </BinaryExpression.Right>
                    </BinaryExpression>
                </QueryFilterExpressionTree>
            </QueryOperation.FilterExpression>
            <QueryOperation.Source>
                <QuerySourceExpressionTree>
                    <MemberExpression Member="Application1:ApplicationData/Members[会員テーブルSet]"
                                      NodeType="MemberAccess" />
                </QuerySourceExpressionTree>
            </QueryOperation.Source>
            <QueryOperationParameter Name="Id"
                                     ParameterType="Microsoft.LightSwitch:Int32?">
                <QueryOperationParameter.Attributes>
                    <Description Value="The value of the ‘Id’ key property of the entity to retrieve." />
                </QueryOperationParameter.Attributes>
            </QueryOperationParameter>
        </QueryOperation>
        <QueryOperation Name="会員テーブルSet_All"
                        ReturnType="Application1:会員テーブル*">
            <QueryOperation.Attributes>
                <Generated />
                <Description Value="Returns all entities contained in the entity set." />
            </QueryOperation.Attributes>
            <QueryOperation.Source>
                <QuerySourceExpressionTree>
                    <MemberExpression Member="Application1:ApplicationData/Members[会員テーブルSet]"
                                      NodeType="MemberAccess" />
                </QuerySourceExpressionTree>
            </QueryOperation.Source>
        </QueryOperation>
    </EntityContainer>
    <DataService DataProvider="EntityFrameworkDataProvider"
                 EntityContainer="Application1:ApplicationData"
                 Name="ApplicationDataMapping" />
    <EntityType Name="会員テーブル">
        <EntityType.Methods>
            <EntityMethod Name="Delete">
                <EntityMethod.Attributes>
                    <Generated />
                </EntityMethod.Attributes>
            </EntityMethod>
        </EntityType.Methods>
        <EntityType.Properties>
            <KeyProperty Name="Id"
                         PropertyType="Microsoft.LightSwitch:Int32">
                <KeyProperty.Attributes>
                    <Required />
                    <NotSearchable />
                </KeyProperty.Attributes>
            </KeyProperty>
            <EntityProperty Name="会員名"
                            PropertyType="Microsoft.LightSwitch:String?">
                <EntityProperty.Attributes>
                    <MaxLength Value="255" />
                </EntityProperty.Attributes>
            </EntityProperty>
            <EntityProperty Name="メールアドレス"
                            PropertyType="Microsoft.LightSwitch.Extensions:EmailAddress">
                <EntityProperty.Attributes>
                    <Required />
                    <MaxLength Value="255" />
                    <EmailAddressValidation DomainRequired="True" />
                </EntityProperty.Attributes>
            </EntityProperty>
            <EntityProperty Name="性別"
                            PropertyType="Microsoft.LightSwitch:Int32">
                <EntityProperty.Attributes>
                    <Required />
                    <NotSearchable />
                </EntityProperty.Attributes>
            </EntityProperty>
            <EntityProperty Name="誕生日"
                            PropertyType="Microsoft.LightSwitch:Date">
                <EntityProperty.Attributes>
                    <Required />
                    <NotSearchable />
                    <Range Maximum="12/31/9999"
                           Minimum="01/01/1753" />
                </EntityProperty.Attributes>
            </EntityProperty>
        </EntityType.Properties>
    </EntityType>
</ModelFragment>

———————————————————————————————————-

どうやら画面上から定義した内容は、このApplicationDefinition.lsmlファイルに展開されるようですね。

ちなみに、この状態でBin\Data\Tempに存在しているApplicationDatabase.mdf(データベースファイル)の中をみると、ASP.NETで使っているようなメンバーシップのためのテーブルやビュー、ストアドプロシージャーは存在していますが、定義した会員テーブルは存在していません。
データベース内テーブル

テーブルがどのタイミングで追加されるのか、気になりますが、とりあえずはここまで。

カテゴリー:LightSwitch, Silverlight

LightSwitchの裏側を探る 1:ソリューション作成時の状態を調べる

  TechEd 2010 JapanのキーノートでもLightSwitchは割と大きく取り上げられました。

で、普通だとLightSwitchをどのように操作して使っていくのか、という紹介をはじめるところなんでしょうけど、このBlogではちょっと違った方向からいろいろ探っていってみたいと思います。

まず、LightSwitchのプロジェクトを作ってみます。
プロジェクト作成時の画面

ソリューションエクスプローラには3つの項目だけが表示されています。
ソリューションエクスプローラのデフォルト表示

実は、メニューからロジカルビューとファイルビューの選択ができるので、ファイルビューを選択してみます。
ファイルビューの選択

そうすると、Client/Server/Commonというプロジェクトが作成されていることがわかります。
ファイルビューの初期表示

ここで、すべてのファイルの表示をクリックすると、ClientGenerated/ServerGeneratedというプロジェクトも作成されていることがわかります。
すべてのファイルの表示

実際に生成されているファイルの数は619にもおよびます。
コマンドラインからTree /Fを使ってファイル名を取得すると以下のようになります。
すでに日本を含む各国用のリソースが作成されていることもわかりますね。
LightSwitchのソリューションの読込みやコンパイル/起動には結構時間がかかりますが、これだけファイルがあったら時間がかかって当たり前のような気もします。

システムルートフォルダー
│  Application1.sln
│ 
└─Application1
    │  app.config
    │  Application1.lsproj
    │  Application1.lsproj.user
    │  default.htm
    │  Silverlight.js
    │ 
    ├─Bin
    │  ├─Data
    │  │  └─Temp
    │  │          ApplicationDatabase.mdf
    │  │          ApplicationDatabase_log.LDF
    │  │         
    │  └─Debug
    │      │  ClientAccessPolicy.xml
    │      │  default.htm
    │      │  Microsoft.LightSwitch.Design.svc
    │      │  Silverlight.js
    │      │  VslsHost.exe
    │      │  web.config
    │      │ 
    │      ├─bin
    │      │      Microsoft.LightSwitch.Design.Server.Internal.dll
    │      │     
    │      ├─Data
    │      └─Web
    │          └─Manifests
    │                  Microsoft.LightSwitch.Design.Server.Manifest.dll
    │                  Microsoft.LightSwitch.Server.Manifest.dll
    │                 
    ├─Client
    │  │  ApplicationDefinitionLoader.cs
    │  │  Client.csproj
    │  │  Client.csproj.user
    │  │  Config.xml
    │  │ 
    │  ├─Bin
    │  │  └─Debug
    │  ├─DataLogic
    │  ├─DataSources
    │  ├─GeneratedArtifacts
    │  │      Application.cs
    │  │      Screen.cs
    │  │     
    │  ├─obj
    │  │  └─Debug
    │  │      │  DesignTimeResolveAssemblyReferencesInput.cache
    │  │      │ 
    │  │      └─TempPE
    │  ├─Properties
    │  │      AppManifest.xml
    │  │      AssemblyInfo.cs
    │  │     
    │  └─Screens
    ├─ClientGenerated
    │  │  ApplicationDefinitionLoader.cs
    │  │  ClientGenerated.csproj
    │  │  ClientGenerated.csproj.user
    │  │  Config.xml
    │  │ 
    │  ├─Bin
    │  │  └─Debug
    │  │      │  Application1.Client.xap
    │  │      │  Microsoft.LightSwitch.Base.Client.dll
    │  │      │  Microsoft.LightSwitch.Client.dll
    │  │      │  Microsoft.LightSwitch.Client.Internal.dll
    │  │      │  Microsoft.LightSwitch.CodeMarker.dll
    │  │      │  Microsoft.LightSwitch.DebugOptions.Client.Internal.dll
    │  │      │  Microsoft.LightSwitch.dll
    │  │      │  Microsoft.LightSwitch.ExportProvider.dll
    │  │      │  Microsoft.LightSwitch.ManifestService.Client.dll
    │  │      │  Microsoft.LightSwitch.Model.Xaml.Client.dll
    │  │      │  System.ComponentModel.Composition.dll
    │  │      │  System.ComponentModel.DataAnnotations.dll
    │  │      │  System.ServiceModel.DomainServices.Client.dll
    │  │      │  System.ServiceModel.DomainServices.Client.Web.dll
    │  │      │  System.ServiceModel.Extensions.dll
    │  │      │  System.ServiceModel.PollingDuplex.dll
    │  │      │  System.ServiceModel.Web.Extensions.dll
    │  │      │  System.Windows.Controls.Data.dll
    │  │      │  System.Windows.Controls.Data.Input.dll
    │  │      │  System.Windows.Controls.dll
    │  │      │  System.Windows.Controls.DomainServices.dll
    │  │      │  System.Windows.Controls.Input.dll
    │  │      │  System.Windows.Controls.Navigation.dll
    │  │      │  System.Windows.Data.dll
    │  │      │  System.Xml.Linq.dll
    │  │      │  XapCache.tmp
    │  │      │ 
    │  │      ├─ar
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─bg
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─ca
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─cs
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─da
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─de
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.Composition.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.ServiceModel.Extensions.resources.dll
    │  │      │      System.ServiceModel.PollingDuplex.resources.dll
    │  │      │      System.ServiceModel.Web.Extensions.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.Navigation.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │      System.Windows.Data.resources.dll
    │  │      │      System.Xml.Linq.resources.dll
    │  │      │     
    │  │      ├─el
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─es
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.Composition.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.ServiceModel.Extensions.resources.dll
    │  │      │      System.ServiceModel.PollingDuplex.resources.dll
    │  │      │      System.ServiceModel.Web.Extensions.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.Navigation.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │      System.Windows.Data.resources.dll
    │  │      │      System.Xml.Linq.resources.dll
    │  │      │     
    │  │      ├─et
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─eu
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─fi
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─fr
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.Composition.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.ServiceModel.Extensions.resources.dll
    │  │      │      System.ServiceModel.PollingDuplex.resources.dll
    │  │      │      System.ServiceModel.Web.Extensions.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.Navigation.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │      System.Windows.Data.resources.dll
    │  │      │      System.Xml.Linq.resources.dll
    │  │      │     
    │  │      ├─he
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─hr
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─hu
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─id
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─it
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.Composition.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.ServiceModel.Extensions.resources.dll
    │  │      │      System.ServiceModel.PollingDuplex.resources.dll
    │  │      │      System.ServiceModel.Web.Extensions.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.Navigation.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │      System.Windows.Data.resources.dll
    │  │      │      System.Xml.Linq.resources.dll
    │  │      │     
    │  │      ├─ja
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.Composition.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.ServiceModel.Extensions.resources.dll
    │  │      │      System.ServiceModel.PollingDuplex.resources.dll
    │  │      │      System.ServiceModel.Web.Extensions.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.Navigation.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │      System.Windows.Data.resources.dll
    │  │      │      System.Xml.Linq.resources.dll
    │  │      │     
    │  │      ├─ko
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.Composition.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.ServiceModel.Extensions.resources.dll
    │  │      │      System.ServiceModel.PollingDuplex.resources.dll
    │  │      │      System.ServiceModel.Web.Extensions.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.Navigation.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │      System.Windows.Data.resources.dll
    │  │      │      System.Xml.Linq.resources.dll
    │  │      │     
    │  │      ├─lt
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─lv
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─ms
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─nl
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─no
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─pl
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─pt
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─pt-BR
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─ro
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─ru
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.Composition.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.ServiceModel.Extensions.resources.dll
    │  │      │      System.ServiceModel.PollingDuplex.resources.dll
    │  │      │      System.ServiceModel.Web.Extensions.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.Navigation.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │      System.Windows.Data.resources.dll
    │  │      │      System.Xml.Linq.resources.dll
    │  │      │     
    │  │      ├─sk
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─sl
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─sr-Cyrl-CS
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─sr-Latn-CS
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─sv
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─th
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─tr
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─uk
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─vi
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │     
    │  │      ├─zh-Hans
    │  │      │      Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │      │      Microsoft.LightSwitch.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │      │      Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │      │      Microsoft.LightSwitch.resources.dll
    │  │      │      System.ComponentModel.Composition.resources.dll
    │  │      │      System.ComponentModel.DataAnnotations.resources.dll
    │  │      │      System.ServiceModel.Extensions.resources.dll
    │  │      │      System.ServiceModel.PollingDuplex.resources.dll
    │  │      │      System.ServiceModel.Web.Extensions.resources.dll
    │  │      │      System.Windows.Controls.Data.Input.resources.dll
    │  │      │      System.Windows.Controls.Data.resources.dll
    │  │      │      System.Windows.Controls.Input.resources.dll
    │  │      │      System.Windows.Controls.Navigation.resources.dll
    │  │      │      System.Windows.Controls.resources.dll
    │  │      │      System.Windows.Data.resources.dll
    │  │      │      System.Xml.Linq.resources.dll
    │  │      │     
    │  │      └─zh-Hant
    │  │              Microsoft.LightSwitch.Client.Internal.resources.dll
    │  │              Microsoft.LightSwitch.Client.resources.dll
    │  │              Microsoft.LightSwitch.ExportProvider.resources.dll
    │  │              Microsoft.LightSwitch.ManifestService.Client.resources.dll
    │  │              Microsoft.LightSwitch.Model.Xaml.Client.resources.dll
    │  │              Microsoft.LightSwitch.resources.dll
    │  │              System.ComponentModel.Composition.resources.dll
    │  │              System.ComponentModel.DataAnnotations.resources.dll
    │  │              System.ServiceModel.Extensions.resources.dll
    │  │              System.ServiceModel.PollingDuplex.resources.dll
    │  │              System.ServiceModel.Web.Extensions.resources.dll
    │  │              System.Windows.Controls.Data.Input.resources.dll
    │  │              System.Windows.Controls.Data.resources.dll
    │  │              System.Windows.Controls.Input.resources.dll
    │  │              System.Windows.Controls.Navigation.resources.dll
    │  │              System.Windows.Controls.resources.dll
    │  │              System.Windows.Data.resources.dll
    │  │              System.Xml.Linq.resources.dll
    │  │             
    │  ├─DataLogic
    │  ├─DataSources
    │  ├─GeneratedArtifacts
    │  │      Application.cs
    │  │     
    │  ├─obj
    │  │  └─Debug
    │  │      │  DesignTimeResolveAssemblyReferencesInput.cache
    │  │      │  ResolveAssemblyReference.cache
    │  │      │ 
    │  │      └─TempPE
    │  ├─Properties
    │  │      AppManifest.xml
    │  │      AssemblyInfo.cs
    │  │      OutOfBrowserSettings.xml
    │  │     
    │  └─Screens
    ├─Common
    │  │  Common.csproj
    │  │  Common.csproj.user
    │  │ 
    │  ├─Bin
    │  │  └─Debug
    │  │      │  Application1.Common.dll
    │  │      │  Application1.Common.pdb
    │  │      │  System.ComponentModel.Composition.dll
    │  │      │  System.ComponentModel.Composition.xml
    │  │      │ 
    │  │      ├─de
    │  │      │      System.ComponentModel.Composition.resources.dll
    │  │      │     
    │  │      ├─es
    │  │      │      System.ComponentModel.Composition.resources.dll
    │  │      │     
    │  │      ├─fr
    │  │      │      System.ComponentModel.Composition.resources.dll
    │  │      │     
    │  │      ├─it
    │  │      │      System.ComponentModel.Composition.resources.dll
    │  │      │     
    │  │      ├─ja
    │  │      │      System.ComponentModel.Composition.resources.dll
    │  │      │     
    │  │      ├─ko
    │  │      │      System.ComponentModel.Composition.resources.dll
    │  │      │     
    │  │      ├─ru
    │  │      │      System.ComponentModel.Composition.resources.dll
    │  │      │     
    │  │      ├─zh-Hans
    │  │      │      System.ComponentModel.Composition.resources.dll
    │  │      │     
    │  │      └─zh-Hant
    │  │              System.ComponentModel.Composition.resources.dll
    │  │             
    │  ├─GeneratedArtifacts
    │  │      Application.cs
    │  │      DataRuntime.cs
    │  │      Permissions.cs
    │  │     
    │  ├─obj
    │  │  └─Debug
    │  │      │  Application1.Common.dll
    │  │      │  Application1.Common.pdb
    │  │      │  Common.csproj.FileListAbsolute.txt
    │  │      │  DesignTimeResolveAssemblyReferencesInput.cache
    │  │      │  ResolveAssemblyReference.cache
    │  │      │ 
    │  │      └─TempPE
    │  └─Properties
    │          AssemblyInfo.cs
    │         
    ├─Data
    │      ApplicationDefinition.lsml
    │     
    ├─Server
    │  │  Server.csproj
    │  │ 
    │  ├─bin
    │  │  └─Debug
    │  ├─DataLogic
    │  ├─DataSources
    │  ├─GeneratedArtifacts
    │  │      Application.cs
    │  │      DataService.cs
    │  │     
    │  ├─obj
    │  │  └─Debug
    │  │      │  DesignTimeResolveAssemblyReferencesInput.cache
    │  │      │ 
    │  │      └─TempPE
    │  └─Properties
    │          AssemblyInfo.cs
    │         
    ├─ServerGenerated
    │  │  ApplicationDefinitionLoader.cs
    │  │  Default.aspx
    │  │  Default.aspx.cs
    │  │  Default.aspx.designer.cs
    │  │  ServerGenerated.csproj
    │  │  ServerGenerated.csproj.user
    │  │  Web.config
    │  │  Web.Debug.config
    │  │  Web.Release.config
    │  │ 
    │  ├─bin
    │  │  └─Debug
    │  ├─DataLogic
    │  ├─DataSources
    │  ├─GeneratedArtifacts
    │  │      Application.cs
    │  │     
    │  ├─obj
    │  │  └─Debug
    │  │      │  DesignTimeResolveAssemblyReferencesInput.cache
    │  │      │  ResolveAssemblyReference.cache
    │  │      │ 
    │  │      └─TempPE
    │  └─Properties
    │          AssemblyInfo.cs
    │         
    └─_Pvt_Extensions
        └─Microsoft.LightSwitch.Extensions
            │  LsPkgLastWriteTime.txt
            │ 
            ├─Client
            │  ├─DebugOnlyRef
            │  │      Microsoft.LightSwitch.Extensions.Design.Client.dll
            │  │     
            │  └─Reference
            │          Microsoft.LightSwitch.Extensions.dll
            │         
            ├─ClientGen
            │  ├─Reference
            │  │      Microsoft.LightSwitch.Extensions.Client.dll
            │  │     
            │  └─StorageRef
            │          Microsoft.LightSwitch.Extensions.Client.dll
            │         
            ├─IDE
            │  ├─Reference
            │  │      Microsoft.LightSwitch.Extensions.Design.dll
            │  │     
            │  └─StorageRef
            │          Microsoft.LightSwitch.Extensions.Design.dll
            │         
            ├─Server
            │  └─Reference
            │          Microsoft.LightSwitch.Extensions.dll
            │         
            └─ServerGen
                ├─Reference
                │      Microsoft.LightSwitch.Extensions.Server.dll
                │     
                └─StorageRef
                        Microsoft.LightSwitch.Extensions.Server.dll

カテゴリー:LightSwitch, Silverlight

ライトスイッチ、つけっぱなしです

ということで続報。

LightSwitch Developer Center

ベータ1が公開されました。
上記URLからベータ1のダウンロード、How Do I ビデオの閲覧、チュートリアルの閲覧、トレーニングキットのダウンロードなどができます。

Blogでもいろいろと。

LightSwitch Beta1 Now Available, Building Your First App
概要とちょっとしたアプリ作成のステップ バイ ステップ

Authentication Features in Visual Studio LightSwitch
認証に関する情報

Data Storage in Visual Studio LightSwitch
データベース接続に関する情報

Logical View vs File View in Solution Explorer
小ネタ - Solution Explorerでファイルベースでの表示ができる

そして、LightSwitchのtwitterアカウントなんてのもありました
http://twitter.com/VSLightSwitch

さてさて、みるものいっぱいだぞ、っと。

カテゴリー:LightSwitch, Silverlight

ライトスイッチ、ついてますか?

VisualStudio LightSwitch

23日にベータ公開予定なんで、日本時間だと明日かな?
このLightSwitchがすでにMSDNからダウンロードできるようになっています。
まだ触りはじめたところですが、面白そうな技術なのでとりあえず現時点での情報へのリンクをまとめておきます。

日本語での紹介だとナオキ君の記事がLightSwitchとはどういうものか、というイメージを伝えてくれると思います。

Visual Studio LightSwitch Beta が MSDN Subscription で公開!

あとは英語になりますが。

VisualStudio LightSwitch
-本家サイト、になるのかな?ベータ版の公開ダウンロードはここから。キーノートでまず概要を学びましょう。

ビデオで概要を把握するには、Channnel9から2つ。
Visual Studio LightSwitch – Beyond the Basics
Introducing Visual Studio LightSwitch

すでにMSDN上でドキュメントも公開されています。
Visual Studio LightSwitch Beta 1

Codeギャラリーでサンプルコードも
Visual Studio LightSwitch Samples

Blogでもいろいろとりあげられはじめてますね。

Infragistics + Microsoft LightSwitch = Awesome
LightSwitch Technical Breakdown
Making it shine: How we designed the LightSwitch Touch-Friendly Shell

上記3つの記事はキーノートで登場するタッチフレンドリーシェルを作成したInfragisticsの人の記事です。
その他はまず動かしてみた、といった感じの記事が多いかな?

First look to the Microsoft Visual Studio LightSwitch beta
The First Hour With Lightswitch –BETA-
Creating A LightSwitch Custom Silverlight Control
Printing With LightSwitch

そそ、忘れちゃいけないのが本家本元、LightSwitch Team Blog

Visual Studio LightSwitch Team Blog

今はMSDNのドキュメントを最初から読み始めてるところです。
ガイドツアーからはじまるところはいいですね。
さて、どこまで読み進められるか。。。つか、いつまでかかるか。。。(w

カテゴリー:LightSwitch, Silverlight