none
LIGHTSWITCH の CLICKONCE配置後、うまく動かせない RRS feed

  • 質問

  • みなさんこんにちは。

    なんとなく、今更感はありますが・・・


    Visual Studio 2015 で、Lightswitch Applicationを作成します。OOBタイプで作成。

    これを、IISへClick Once タイプの配置を行いたいのです。

    とりあえず、Local のIIS Expressでテスト!(実は、スタンドアロンWINDOWS  SERVER でやっても同じだった)

    アプリケーション自体は配置できますが、実行(参照)すると、例によって「HTTP エラー 500.0 - Internal Server Error」となります。
    (PCは、 Windows 10 64bit です) 

    あ~そうだ、WEB PI でランタイムをいれなくちゃ!
    と思い、(確か、最初の頃はそうだった)IIS マネージャ から WEB PI を起動して検索するも、それらしき物が見当たりません。
    LIGHTSWITCH , VISUAL STUDIO 等で検索してもそれらしきものは何もないように見えます。


    さて、

    ・そもそも、もうCLICKONCE タイプでは配置できないよ!頭古いよ!(泣
    ・名前が異なるよ!
    ・あきらめて、HTML版で作って!(泣
    ・その他(全然違う理由の可能性等)

    など、どういう事なのか、情報お持ちの方、教えてくださいませ。

    追記「LIGHTSWITCH OOB タイプを使っている理由」

    ・開発、楽、速い!すぐ直してreleaseできる!(自分の気持ち)
    ・何も考えなくても、そこそこ見た目が綺麗!(自分の気持ち)
    ・とにかく、沢山一度に情報見たい!じゃないと仕事にならん!(顧客要望)
    ・ENTITY管理めっちゃ楽!
    ・配布が楽!
    ・なんか、HTML版はいきなりうまく動かない(W)
     正しくは、なぜか、一覧がうまくだせない。(まじめに取り組んでいないT.T)
    ・なくなりそうで、なくならない・・・あと5年くらいは大丈夫なはず!

    等、ほぼほぼ、自分の手抜きメインで採用しています・・・

    2017年6月6日 1:58

回答

  • 今回テストした内容を次の構成で記します。

    (1)はじめに
    (2)インストール作業
    (3)lightswitchアプリ準備作業
    (4)IIS上にlightswitchアプリをインポート
    (5)クライアントユーザに公開する方法


    ------------------------------------------------------------------
    (1)はじめに
    ------------------------------------------------------------------
    [テストに用いた環境]

    [サーバ]
    Windows Server 2016 Standard Evaluation 64bit
    Updateは最新にしています。
    Visual Studio Community 2015 Update3
    OfficeToolsForVS2015を使用してLightswitchをインストールしています。
    SQL Server 2016
    IIS10

    [クライアント]
    Windows10 64bit
    Visual Studio Community 2015 Update3
    Visual Studio Community 2013 Update5
    IISおよびSQL Serverはインストールしていません。
    こちらの環境は崩せないのでご了承ください。

    ノートPCが2台しかないため、アプリケーションサーバとデータベースサーバを
    同じサーバOSにしています。
    用意できる環境が大きく異なってしまうことを、ご了承ください。

    3階層のデスクトップタイプということで
    作成されるアプリケーションはエンドユーザのデスクトップ環境で実行可能であること
    データベースとサーバコンポーネントはIIS上で実行されること
    と認識しています。

    Keiichi Oumi様の環境報告に

    記載のあった「OOB」について
    おそらくLANが変更になっても対応しやすいようにした手法を指しているものと考えております。
    (例)
    ・LANマッピング機能を使用して未認証クライアントの許可トラフィック(DNS または DHCP 要求など)の再タグ付け
    ・クライアントは IP アドレスを変更する必要がない
    ・ユーザの場合スタティック ルートは必要がない
    OOBに関して上記内容が正しければ、ネットワークに関する運用対策を含めた手法を用いているものであり、
    今回のLightswitchをクリックワンスで各ユーザに配布をするケースについては
    OOBに関しては心配する必要がないと受けとめております。

    2015および2017のISOおよびWebInstallerは次のサイトで確認できると思います。
    [URL]
    https://www.visualstudio.com/ja/downloads/?rr=https%3A%2F%2Fforums.iis.net%2Ft%2F1228469.aspx%3FVisual%2BStudio%2B2015%2BCommunity%2BEdition%2Bwon%2Bt%2Binstall
    ※2017/07/03 確認時点

    実行結果としては次のように実行できればいいと思います。
    結果以降は、その手順について記します。

    [実行結果]

    クライアント側で実行した結果となります。







    2017年7月3日 23:31
  • ------------------------------------------------------------------
    (2)インストール作業
    ------------------------------------------------------------------

    サーバを立てる必要があったためノートに次の評価版をインストールしました。
    Windows Server 2016 Standard Evaluation 64bit

    また、サーバ上でアプリを作ることにしたので次のインストールを行いました。
    Visual Studio Community 2015 Update  3
    ※日本語パッチをあてています。

    SQL Server 2016 SP1
    SQL Serverはすべての機能をインストールしました。
    SQL Server 2016 with SP1
    評価版ソフトウェア  |  180 日
    [URL]
    https://www.microsoft.com/ja-jp/evalcenter/evaluate-sql-server-2016

    SQL Server2016をインストールする場合、インストールする機能として「Polybase」を含めている場合は
    Oracle JRE 7 Update 51(64ビット)が必要となります。
    次のURLからインストールするコンピュータに適切なJREをしてインストールをしてください。
    [URL JDK/Server JRE/JRE]
    http://www.oracle.com/technetwork/java/javase/downloads/index.html
    [JRE URL]
    http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
    ※2017/07/02時点
    Windows Server 2016 64bitのケース
    jre-8u131-windows-x64 install


    Microsoft R オープンおよびMicrosoft R サーバのオフラインインストールをする場合は
    次のcabファイルをインストールすることになります。

    SRS_8.0.3.15000_1033.cab
    https://go.microsoft.com/fwlink/?LinkId=824879&lcid=1041

    SRO_3.2.2.15000_1033.cab
    https://go.microsoft.com/fwlink/?LinkId=824881&lcid=1041

    上記ダウンロードした2ファイルを一つのフォルダにいれて
    ウィザードに従ってインストールパスの参照ボタンからフォルダを指定することになります。

    サービスを起動後、データベースを作成しています。
    データベースIDはtestdbとしました。


    lightswitchに使用したサンプルデータは次の通りとなります。

    CREATE TABLE [dbo].[tbl1] (
        [fld1] INT           NOT NULL,
        [fld2] INT           NOT NULL,
        [fld3] NVARCHAR (50) NOT NULL,
        CONSTRAINT [pk1] PRIMARY KEY CLUSTERED ([fld1] ASC)
    );
    
    insert into tbl1 values(1,100,'aaa');
    insert into tbl1 values(2,200,'AAA');
    insert into tbl1 values(3,300,'12345');
    insert into tbl1 values(4,400,'あああ');
    insert into tbl1 values(5,500,'aあbいcう');
    

    SQL Server Management Studio
    [URL]
    https://docs.microsoft.com/ja-jp/sql/ssms/download-sql-server-management-studio-ssms

    SQL Server Management Studio 17.1 のダウンロードdownload
    [URL]
    https://go.microsoft.com/fwlink/?linkid=849819

    SQL Server Management Studio 17.1 アップグレード パッケージのダウンロード (17.0 から 17.1 へのアップグレード)
    [URL]
    https://go.microsoft.com/fwlink/?linkid=849821


    IISはWindows Server 2016のサーバーマネージャーからインストールしています。
    しかし、のちにランタイムとして次の2つをWeb PI 4.6からインストールする必要があったため
    最終的にはIISに関するものはすべてチェックをしてインストールしました(振り分けが面倒だったため)。

    LightSwitch in Visual Studio 2013 -Server Configuration without local SQL Express
    LightSwitch in Visual Studio 2013 -Server Configuration with local SQL Express

    asp.netの簡易確認として次のように確認しています。

    <%@ Page Language="C#" %>
    <script runat="server">
    protected void Page_Load(Object source, EventArgs e) {
        sample.Text = "テスト確認ページ";
    }
    </script>
    <HTML>
    <BODY>
        <asp:Label runat="server" id="sample" />
    </BODY>
    </HTML>

    [補足悦明]
    asp.net用のファイルはUnicode UTF-8 BOM付(シグネチャ)で保存しています。
    サンプルのaspxが表示されたことを確認

    Visual Studio Community 2015から、そのままlightswitchは使用できません。
    Community向けにツールボックスが用意されているので、下記URLからEXEファイルをダウンロードして
    実行およびインストールをしていただくことになります。

    Microsoft Office Developer Tools for Visual Studio 2015
    [URL]
    http://aka.ms/OfficeDevToolsForVS2015
    実行可能ファイル名
    OfficeToolsForVS2015.exe

    直接ダウンロードをした実行可能ファイルを実行してインストールをしてください。
    ※すみません。ダウンロードURL取り忘れました。

    これでlightswitchがVisual Studio Community 2015に組み込まれます。
    ※念のため、再起動はしてください。

    lightswtichをIIS上に設置するためにはランタイムが必要となります。
    はじめの方に記載した次の2ファイルをWeb PI 4.6からインストールすることになります。

    LightSwitch in Visual Studio 2013 -Server Configuration without local SQL Express
    LightSwitch in Visual Studio 2013 -Server Configuration with local SQL Express

    私の場合は一度Web PI 5.0をアンインストールしてからWeb PI 4.6をインストールしました。

    なお、Web PIの5.0および4.6は次のURLにあります。
    [URL]
    https://docs.microsoft.com/en-us/iis/install/web-platform-installer/web-platform-installer-direct-downloads
    ※64bitとx86に分かれているので、適切なインストーラを選んでください。

    Web PI 4.6のインストール

    先にも述べましたが、上記Web PI 4.6からインストールをするためにダウンロードする2ファイルは
    適切なIISがインストールされていないとダウンロードおよびインストールに失敗してしまいます。
    このため、私の場合はすべてIISの機能にチェックをいれてインストールしてしまいました。

    Web PI 4.6が起動したら検索ボックスに「lightswitch」と入力して一覧を表示しダウンロードおよびインストールを
    実行してください。

    Web PI 4.6を使用したlightswitch用のランタイムのインストールが終えたのち、Web PI 5.0に戻しました。


    2017年7月3日 23:31
  • ------------------------------------------------------------------
    (3)lightswitchアプリ準備作業
    ------------------------------------------------------------------

    [出力ログ]

    ------ ビルド開始: プロジェクト:test1.Server, 構成:Release Any CPU ------
      test1.Server -> C:\test\test1\test1\test1.Server\bin\Release\Application.Server.dll
    ------ ビルド開始: プロジェクト:test1.DesktopClient, 構成:Release Any CPU ------
      test1.DesktopClient -> C:\test\test1\test1\test1.DesktopClient\Bin\Release\test1.DesktopClient.dll
      Begin application manifest generation
      Application manifest generation completed successfully			
    ------ ビルド開始: プロジェクト:test1, 構成:Release Any CPU ------			
    ------ 発行の開始: プロジェクト:test1, 構成:Release Any CPU ------			
    	Xap ファイルに署名していません。		
    		Transformed Web.config using C:\test\test1\test1\test1.Server\Web.Release.config into obj\Release\TransformWebConfig\transformed\Web.config.	
    		Auto ConnectionString Transformed obj\Release\TransformWebConfig\transformed\Web.config into obj\Release\CSAutoParameterize\transformed\Web.config.	
    			Packaging into C:\test\test1\test1\Publish\test1.zip.
    			sitemanifest (sitemanifest) を追加しています。
    			IIS アプリケーション (C:\test\test1\test1\bin\Release\app.publish\) を追加しています
    			アプリケーション (C:\test\test1\test1\bin\Release\app.publish\) を作成しています
    			仮想パス (C:\test\test1\test1\bin\Release\app.publish\) を追加しています
    			ディレクトリ (C:\test\test1\test1\bin\Release\app.publish\) を追加しています。
    			ディレクトリ (C:\test\test1\test1\bin\Release\app.publish\bin) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Application.Server.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\diagnostics.wadcfg) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.Data.Edm.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.Data.OData.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.Data.Services.Client.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.Data.Services.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.AppBridge.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.CodeMarker.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.ExportProvider.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.Extensions.Server.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.ManifestService.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.Model.Xaml.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.Server.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.Server.Host.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.WindowsAzure.ServiceRuntime.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\System.IdentityModel.Tokens.Jwt.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\System.ServiceModel.DomainServices.EntityFramework.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\System.ServiceModel.DomainServices.Hosting.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\System.ServiceModel.DomainServices.Hosting.OData.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\System.ServiceModel.DomainServices.Server.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\System.ServiceModel.PollingDuplex.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\System.Spatial.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\default.aspx) を追加しています。
    			ディレクトリ (C:\test\test1\test1\bin\Release\app.publish\DesktopClient) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\DesktopClient\default.htm) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\DesktopClient\Silverlight.js) を追加しています。
    			ディレクトリ (C:\test\test1\test1\bin\Release\app.publish\DesktopClient\web) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\DesktopClient\web\test1.DesktopClient.xap) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\Microsoft.LightSwitch.SecurityData.svc) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\packages.config) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\testdbData.svc) を追加しています。
    			ディレクトリ (C:\test\test1\test1\bin\Release\app.publish\Web) を追加しています。
    			ディレクトリ (C:\test\test1\test1\bin\Release\app.publish\Web\Manifests) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\Web\Manifests\Microsoft.LightSwitch.Server.Manifest.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\web.config) を追加しています。
    			宣言されたパラメーター 'test1_IisWebApplication' を追加しています。
    			宣言されたパラメーター 'testdbData' を追加しています。
    			Package "test1.zip" is successfully created as single file at the following location:
    file:///C:/test/test1/test1/Publish			
    			To get the instructions on how to deploy the web package please visit the following link:
    			http://go.microsoft.com/fwlink/?LinkId=124618
    			Sample script for deploying this package is generated at the following location:
    C:\test\test1\test1\Publish\test1.deploy.cmd			
    For this sample script, you can change the deploy parameters by changing the following file: 			
    C:\test\test1\test1\Publish\test1.SetParameters.xml			
    ========== ビルド: 3 正常終了、0 失敗、0 更新不要、0 スキップ ==========			
    ========== 公開: 1 正常終了、0 失敗、0 スキップ ==========			



    2017年7月3日 23:32
  • ------------------------------------------------------------------

    (4)IIS上にlightswitchアプリをインポート
    ------------------------------------------------------------------

    IIS上にlightswitchアプリをインポートするために公開するウェブサイトを選択し
    操作グループにある「アプリケーションのインポート」を選択する必要があります。
    しかし、下記のように「アプリケーションのインポート」が表示されていない場合は
    Webの配置に必要なWeb Deployがインストールされていないためインストーラのダウンロードおよびインストールをする
    必要があります。

    Web DepoyはWebに配置するためのツールです。
    [URL]
    https://www.microsoft.com/ja-JP/download/details.aspx?id=43717
    WebDeploy_amd64_ja-JP.msi

    このサンプルではWeb Deploy v3.6 です。
    Web 配置ツールを使用すると、IIS Web サーバー、Web アプリケーション、および Web サイトの移行、管理、および展開を簡略化できます。

    Web Deployをインストールした場合は再起動をしてください。


    手順としては「アプリケーションのインポート」を選択したのち、「公開」で作成した場所を選んで
    「zip」ファイルをインポートすることになります。

    このサンプルでは次のURLを指定して実行すると下記の画面のように表示されます。
    http://svr/test1/DesktopClient/default.htm




    2017年7月3日 23:32
  • ------------------------------------------------------------------

    (5)クライアントユーザに公開する方法
    ------------------------------------------------------------------

    今回のサンプルではユーザにasp.netのページにリンクを次のように設けて
    リンクをクリックすることでClickOnceをしてもらい、ダウンロード手続きをできるようにしました。

    リンク先はlightswitchのプロジェクトのプロパティから「公開」をクリックして
    ウィザード形式でIISに作成した配置場所となります。


    2017年7月3日 23:32

すべての返信

  • 環境もないため、一方的にこれは使えるの?
    的な感じで答えてしまうことをご了承ください。

    あとは、この記事を見ている他の開発者さんがこたえてくれるのを祈るばかり。

    内容は下記2点についてと思っています。
    (1)ClickOnceでのインストールの可否
    (2)LightSwitch向けのランタイム

    ------------------------------------------------------------------------
    (1)ClickOnceでのインストールの可否
    ------------------------------------------------------------------------
    > そもそも、もうCLICKONCE タイプでは配置(省略)
    2階層の例となりますが、マイクロソフトさんで公開しているので
    配置はおそらく可能と考えております。
    ※ページ右上に「Visual Studio 2015」と表示されていることより。

    方法: 2 階層の LightSwitch アプリケーションを配置する
    [URL]
    https://msdn.microsoft.com/ja-jp/library/ff852056.aspx

    また次の本からもOneClickインストーラーについての記述があることより
    使用可能と思われます。

    書籍名:Visual Studio Lightswitch 2015

    [URL]
    https://books.google.co.jp/books?id=ukRECwAAQBAJ&pg=PA798&lpg=PA798&dq=lightswitch+2015+clickonce+installer&source=bl&ots=lkeWzc1D3U&sig=1kJNMbLOP_S5L6wyh_bzoHqxGvw&hl=ja&sa=X&ved=0ahUKEwiTlt7wzK_UAhWKlZQKHa_yCcAQ6AEIUjAG#v=onepage&q=lightswitch%202015%20clickonce%20installer&f=false

    P798より引用
    ------------------------------------------------------------------------
    When the user clicks on the Install button,
    the "ClickOnce" installer installs your desktop applicaiton and
    creates a desktop icon.
    ------------------------------------------------------------------------


    ------------------------------------------------------------------------
    (2)LightSwitch向けのランタイム
    ------------------------------------------------------------------------
    > WEB PI でランタイム(省略)
    下記内容をインターネット上で見つけました。
    ただし、Keiichi Oumi様の環境がLightSwitch2015であることから
    同じように設定できるかは分かりかねます。

    [URL]
    http://answers.flyppdevportal.com/MVC/Post/Thread/ed1272fe-dea6-49aa-a7e8-b1556b2c16d3?category=vsgeneralja

    [引用]
    ------------------------------------------------------------------------
    gekka on Thu, 30 Jun 2016 09:29:00

    Web Platform Installer5.0の規定の配信のフィードには登録されていないようなので、
    「[MEMO]Web Platform Installer のプライマリフィードを変更する」を参考に、
    古いフィードを表示させてみるといいかも。
    とりあえず5.0よりも前の配信リスト4.6でLightSwitchと検索すると
    Visual studio LightSwitch 2011のサーバーランタイムが見つかります。

    なお、既定のフィードしか登録されていない状態でプライマリフィードの追加をすると応答無しになるっぽいので、
    一度タスクマネージャーでプロセスを終了して再度WebPIを起動すれば反映されます。

    「[MEMO]Web Platform Installer のプライマリフィードを変更する」リンクURL
    https://blogs.msdn.microsoft.com/web_/2013/02/05/memoweb-platform-installer/

    ------------------------------------------------------------------------

    また別記事では次のようなことが書いてありました。

    [URL]
    http://answers.flyppdevportal.com/MVC/Post/Thread/8a4453b0-1422-458c-a1b9-c4a8e0fa5245?category=lightswitch

    [引用]
    ------------------------------------------------------------------------
    I couldn’t find LightSwitch 2015 runtime in either
    Visual Studio 2015 or in the Web Platform Installer 5.0
    so I used the fix here to install LightSwitch 2013 Runtime
    (aka “Lightship in Visual Studio 2013 – Server Configuration without local SQL Express”)
    to install it from the Web Platform Installer 4.6.
    ------------------------------------------------------------------------
    この開発者のケースではWEB PI5.0でLightSwitch 2015用のランタイムが見つけられなかったので
    LightSwitch 2013 Runtime(修正バージョン)を使用したとあります。
    ※Web Platform Installer 4.6を使用

    2017年6月9日 1:40
  • WEB PI5.0 を変える!

    そんな発想全くもって、ありませんでした。

    さっそく試してみます。ありがとうございます。

    結果は、また後程・・・

    2017年6月13日 0:03
  • 一応、最新状況を・・・

    やりたかったのは、デスクトップタイプの三層配置(っていうのかな)でした。

    とりあえず、以下の事を実行

    1. webplatform 4.6 のリストを設定(http://www.microsoft.com/web/webpi/4.6/webproductlist.xml)を設定。
      何故か、webpi5.0 の「同意」ボタンがルーぷするようになってしまった。
      強制終了後、「同意しない」を選ぶと、リストはうまく表示される
    2. LightSwitch in  Visual studio 2013 - Server Configuration ~が表示されるようになったので、これをinstall
    3. 一応IIS確認
      通常のhtml 参照:OK
      ASP.NET WebForm 参照:OK
    4. 配置した(つもりの)Lightswitchサイト参照(default.aspx)
      internal erro 500

    まだまだ、先は長そうです。

    2010 の時は、もうちょっとすんなり行った気がするんだけどなぁ…

    2017年6月26日 7:04
  • 今回テストした内容を次の構成で記します。

    (1)はじめに
    (2)インストール作業
    (3)lightswitchアプリ準備作業
    (4)IIS上にlightswitchアプリをインポート
    (5)クライアントユーザに公開する方法


    ------------------------------------------------------------------
    (1)はじめに
    ------------------------------------------------------------------
    [テストに用いた環境]

    [サーバ]
    Windows Server 2016 Standard Evaluation 64bit
    Updateは最新にしています。
    Visual Studio Community 2015 Update3
    OfficeToolsForVS2015を使用してLightswitchをインストールしています。
    SQL Server 2016
    IIS10

    [クライアント]
    Windows10 64bit
    Visual Studio Community 2015 Update3
    Visual Studio Community 2013 Update5
    IISおよびSQL Serverはインストールしていません。
    こちらの環境は崩せないのでご了承ください。

    ノートPCが2台しかないため、アプリケーションサーバとデータベースサーバを
    同じサーバOSにしています。
    用意できる環境が大きく異なってしまうことを、ご了承ください。

    3階層のデスクトップタイプということで
    作成されるアプリケーションはエンドユーザのデスクトップ環境で実行可能であること
    データベースとサーバコンポーネントはIIS上で実行されること
    と認識しています。

    Keiichi Oumi様の環境報告に

    記載のあった「OOB」について
    おそらくLANが変更になっても対応しやすいようにした手法を指しているものと考えております。
    (例)
    ・LANマッピング機能を使用して未認証クライアントの許可トラフィック(DNS または DHCP 要求など)の再タグ付け
    ・クライアントは IP アドレスを変更する必要がない
    ・ユーザの場合スタティック ルートは必要がない
    OOBに関して上記内容が正しければ、ネットワークに関する運用対策を含めた手法を用いているものであり、
    今回のLightswitchをクリックワンスで各ユーザに配布をするケースについては
    OOBに関しては心配する必要がないと受けとめております。

    2015および2017のISOおよびWebInstallerは次のサイトで確認できると思います。
    [URL]
    https://www.visualstudio.com/ja/downloads/?rr=https%3A%2F%2Fforums.iis.net%2Ft%2F1228469.aspx%3FVisual%2BStudio%2B2015%2BCommunity%2BEdition%2Bwon%2Bt%2Binstall
    ※2017/07/03 確認時点

    実行結果としては次のように実行できればいいと思います。
    結果以降は、その手順について記します。

    [実行結果]

    クライアント側で実行した結果となります。







    2017年7月3日 23:31
  • ------------------------------------------------------------------
    (2)インストール作業
    ------------------------------------------------------------------

    サーバを立てる必要があったためノートに次の評価版をインストールしました。
    Windows Server 2016 Standard Evaluation 64bit

    また、サーバ上でアプリを作ることにしたので次のインストールを行いました。
    Visual Studio Community 2015 Update  3
    ※日本語パッチをあてています。

    SQL Server 2016 SP1
    SQL Serverはすべての機能をインストールしました。
    SQL Server 2016 with SP1
    評価版ソフトウェア  |  180 日
    [URL]
    https://www.microsoft.com/ja-jp/evalcenter/evaluate-sql-server-2016

    SQL Server2016をインストールする場合、インストールする機能として「Polybase」を含めている場合は
    Oracle JRE 7 Update 51(64ビット)が必要となります。
    次のURLからインストールするコンピュータに適切なJREをしてインストールをしてください。
    [URL JDK/Server JRE/JRE]
    http://www.oracle.com/technetwork/java/javase/downloads/index.html
    [JRE URL]
    http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html
    ※2017/07/02時点
    Windows Server 2016 64bitのケース
    jre-8u131-windows-x64 install


    Microsoft R オープンおよびMicrosoft R サーバのオフラインインストールをする場合は
    次のcabファイルをインストールすることになります。

    SRS_8.0.3.15000_1033.cab
    https://go.microsoft.com/fwlink/?LinkId=824879&lcid=1041

    SRO_3.2.2.15000_1033.cab
    https://go.microsoft.com/fwlink/?LinkId=824881&lcid=1041

    上記ダウンロードした2ファイルを一つのフォルダにいれて
    ウィザードに従ってインストールパスの参照ボタンからフォルダを指定することになります。

    サービスを起動後、データベースを作成しています。
    データベースIDはtestdbとしました。


    lightswitchに使用したサンプルデータは次の通りとなります。

    CREATE TABLE [dbo].[tbl1] (
        [fld1] INT           NOT NULL,
        [fld2] INT           NOT NULL,
        [fld3] NVARCHAR (50) NOT NULL,
        CONSTRAINT [pk1] PRIMARY KEY CLUSTERED ([fld1] ASC)
    );
    
    insert into tbl1 values(1,100,'aaa');
    insert into tbl1 values(2,200,'AAA');
    insert into tbl1 values(3,300,'12345');
    insert into tbl1 values(4,400,'あああ');
    insert into tbl1 values(5,500,'aあbいcう');
    

    SQL Server Management Studio
    [URL]
    https://docs.microsoft.com/ja-jp/sql/ssms/download-sql-server-management-studio-ssms

    SQL Server Management Studio 17.1 のダウンロードdownload
    [URL]
    https://go.microsoft.com/fwlink/?linkid=849819

    SQL Server Management Studio 17.1 アップグレード パッケージのダウンロード (17.0 から 17.1 へのアップグレード)
    [URL]
    https://go.microsoft.com/fwlink/?linkid=849821


    IISはWindows Server 2016のサーバーマネージャーからインストールしています。
    しかし、のちにランタイムとして次の2つをWeb PI 4.6からインストールする必要があったため
    最終的にはIISに関するものはすべてチェックをしてインストールしました(振り分けが面倒だったため)。

    LightSwitch in Visual Studio 2013 -Server Configuration without local SQL Express
    LightSwitch in Visual Studio 2013 -Server Configuration with local SQL Express

    asp.netの簡易確認として次のように確認しています。

    <%@ Page Language="C#" %>
    <script runat="server">
    protected void Page_Load(Object source, EventArgs e) {
        sample.Text = "テスト確認ページ";
    }
    </script>
    <HTML>
    <BODY>
        <asp:Label runat="server" id="sample" />
    </BODY>
    </HTML>

    [補足悦明]
    asp.net用のファイルはUnicode UTF-8 BOM付(シグネチャ)で保存しています。
    サンプルのaspxが表示されたことを確認

    Visual Studio Community 2015から、そのままlightswitchは使用できません。
    Community向けにツールボックスが用意されているので、下記URLからEXEファイルをダウンロードして
    実行およびインストールをしていただくことになります。

    Microsoft Office Developer Tools for Visual Studio 2015
    [URL]
    http://aka.ms/OfficeDevToolsForVS2015
    実行可能ファイル名
    OfficeToolsForVS2015.exe

    直接ダウンロードをした実行可能ファイルを実行してインストールをしてください。
    ※すみません。ダウンロードURL取り忘れました。

    これでlightswitchがVisual Studio Community 2015に組み込まれます。
    ※念のため、再起動はしてください。

    lightswtichをIIS上に設置するためにはランタイムが必要となります。
    はじめの方に記載した次の2ファイルをWeb PI 4.6からインストールすることになります。

    LightSwitch in Visual Studio 2013 -Server Configuration without local SQL Express
    LightSwitch in Visual Studio 2013 -Server Configuration with local SQL Express

    私の場合は一度Web PI 5.0をアンインストールしてからWeb PI 4.6をインストールしました。

    なお、Web PIの5.0および4.6は次のURLにあります。
    [URL]
    https://docs.microsoft.com/en-us/iis/install/web-platform-installer/web-platform-installer-direct-downloads
    ※64bitとx86に分かれているので、適切なインストーラを選んでください。

    Web PI 4.6のインストール

    先にも述べましたが、上記Web PI 4.6からインストールをするためにダウンロードする2ファイルは
    適切なIISがインストールされていないとダウンロードおよびインストールに失敗してしまいます。
    このため、私の場合はすべてIISの機能にチェックをいれてインストールしてしまいました。

    Web PI 4.6が起動したら検索ボックスに「lightswitch」と入力して一覧を表示しダウンロードおよびインストールを
    実行してください。

    Web PI 4.6を使用したlightswitch用のランタイムのインストールが終えたのち、Web PI 5.0に戻しました。


    2017年7月3日 23:31
  • ------------------------------------------------------------------
    (3)lightswitchアプリ準備作業
    ------------------------------------------------------------------

    [出力ログ]

    ------ ビルド開始: プロジェクト:test1.Server, 構成:Release Any CPU ------
      test1.Server -> C:\test\test1\test1\test1.Server\bin\Release\Application.Server.dll
    ------ ビルド開始: プロジェクト:test1.DesktopClient, 構成:Release Any CPU ------
      test1.DesktopClient -> C:\test\test1\test1\test1.DesktopClient\Bin\Release\test1.DesktopClient.dll
      Begin application manifest generation
      Application manifest generation completed successfully			
    ------ ビルド開始: プロジェクト:test1, 構成:Release Any CPU ------			
    ------ 発行の開始: プロジェクト:test1, 構成:Release Any CPU ------			
    	Xap ファイルに署名していません。		
    		Transformed Web.config using C:\test\test1\test1\test1.Server\Web.Release.config into obj\Release\TransformWebConfig\transformed\Web.config.	
    		Auto ConnectionString Transformed obj\Release\TransformWebConfig\transformed\Web.config into obj\Release\CSAutoParameterize\transformed\Web.config.	
    			Packaging into C:\test\test1\test1\Publish\test1.zip.
    			sitemanifest (sitemanifest) を追加しています。
    			IIS アプリケーション (C:\test\test1\test1\bin\Release\app.publish\) を追加しています
    			アプリケーション (C:\test\test1\test1\bin\Release\app.publish\) を作成しています
    			仮想パス (C:\test\test1\test1\bin\Release\app.publish\) を追加しています
    			ディレクトリ (C:\test\test1\test1\bin\Release\app.publish\) を追加しています。
    			ディレクトリ (C:\test\test1\test1\bin\Release\app.publish\bin) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Application.Server.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\diagnostics.wadcfg) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.Data.Edm.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.Data.OData.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.Data.Services.Client.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.Data.Services.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.AppBridge.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.CodeMarker.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.ExportProvider.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.Extensions.Server.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.ManifestService.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.Model.Xaml.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.Server.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.LightSwitch.Server.Host.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\Microsoft.WindowsAzure.ServiceRuntime.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\System.IdentityModel.Tokens.Jwt.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\System.ServiceModel.DomainServices.EntityFramework.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\System.ServiceModel.DomainServices.Hosting.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\System.ServiceModel.DomainServices.Hosting.OData.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\System.ServiceModel.DomainServices.Server.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\System.ServiceModel.PollingDuplex.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\bin\System.Spatial.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\default.aspx) を追加しています。
    			ディレクトリ (C:\test\test1\test1\bin\Release\app.publish\DesktopClient) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\DesktopClient\default.htm) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\DesktopClient\Silverlight.js) を追加しています。
    			ディレクトリ (C:\test\test1\test1\bin\Release\app.publish\DesktopClient\web) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\DesktopClient\web\test1.DesktopClient.xap) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\Microsoft.LightSwitch.SecurityData.svc) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\packages.config) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\testdbData.svc) を追加しています。
    			ディレクトリ (C:\test\test1\test1\bin\Release\app.publish\Web) を追加しています。
    			ディレクトリ (C:\test\test1\test1\bin\Release\app.publish\Web\Manifests) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\Web\Manifests\Microsoft.LightSwitch.Server.Manifest.dll) を追加しています。
    			ファイル (C:\test\test1\test1\bin\Release\app.publish\web.config) を追加しています。
    			宣言されたパラメーター 'test1_IisWebApplication' を追加しています。
    			宣言されたパラメーター 'testdbData' を追加しています。
    			Package "test1.zip" is successfully created as single file at the following location:
    file:///C:/test/test1/test1/Publish			
    			To get the instructions on how to deploy the web package please visit the following link:
    			http://go.microsoft.com/fwlink/?LinkId=124618
    			Sample script for deploying this package is generated at the following location:
    C:\test\test1\test1\Publish\test1.deploy.cmd			
    For this sample script, you can change the deploy parameters by changing the following file: 			
    C:\test\test1\test1\Publish\test1.SetParameters.xml			
    ========== ビルド: 3 正常終了、0 失敗、0 更新不要、0 スキップ ==========			
    ========== 公開: 1 正常終了、0 失敗、0 スキップ ==========			



    2017年7月3日 23:32
  • ------------------------------------------------------------------

    (4)IIS上にlightswitchアプリをインポート
    ------------------------------------------------------------------

    IIS上にlightswitchアプリをインポートするために公開するウェブサイトを選択し
    操作グループにある「アプリケーションのインポート」を選択する必要があります。
    しかし、下記のように「アプリケーションのインポート」が表示されていない場合は
    Webの配置に必要なWeb Deployがインストールされていないためインストーラのダウンロードおよびインストールをする
    必要があります。

    Web DepoyはWebに配置するためのツールです。
    [URL]
    https://www.microsoft.com/ja-JP/download/details.aspx?id=43717
    WebDeploy_amd64_ja-JP.msi

    このサンプルではWeb Deploy v3.6 です。
    Web 配置ツールを使用すると、IIS Web サーバー、Web アプリケーション、および Web サイトの移行、管理、および展開を簡略化できます。

    Web Deployをインストールした場合は再起動をしてください。


    手順としては「アプリケーションのインポート」を選択したのち、「公開」で作成した場所を選んで
    「zip」ファイルをインポートすることになります。

    このサンプルでは次のURLを指定して実行すると下記の画面のように表示されます。
    http://svr/test1/DesktopClient/default.htm




    2017年7月3日 23:32
  • ------------------------------------------------------------------

    (5)クライアントユーザに公開する方法
    ------------------------------------------------------------------

    今回のサンプルではユーザにasp.netのページにリンクを次のように設けて
    リンクをクリックすることでClickOnceをしてもらい、ダウンロード手続きをできるようにしました。

    リンク先はlightswitchのプロジェクトのプロパティから「公開」をクリックして
    ウィザード形式でIISに作成した配置場所となります。


    2017年7月3日 23:32