2016-10-19 25 views
1

私は今年仕事を変更しました。そのため、私はJavaからC#に切り替えました。両方の仕事で、私は仕事をしていました/サーバーに配備された大規模なアプリケーションで作業し、さまざまなWebサービスを公開しました。.NET Webアプリケーションを展開するとどうなりますか?

Javaジョブでは、Antビルドプロセスが.warファイルと他のオブジェクトを含む.earファイルを作成しました。この.earファイルは、JBoss/tomcatサーバー内のディレクトリにコピーして配布しました。私はプロセスをかなりよく理解していました。

Visual Studioで緑の三角形の「再生」ボタンを押し、アプリケーションがコンパイルされ、何らかの形でIISにデプロイされ、Visual StudioがアプリケーションのURLを指すWebブラウザを起動します。私は、このプロセスの間に何が起きているのか完全に理解していません。私たちには、実動サーバーに出る実働ビルドを作成するビルドサーバーがありますが、a)ビルドプロセスによって生成されるアーティファクト、およびb)ビルド成果物がIISにどのように展開されているのか分かりません。

手動でビルドとデプロイメントをドライブし、プロセスを再自動化し、既存のビルドとデプロイメントプロセスのトラブルシューティングと修正を行うのに十分なプロセスを理解したいと思います。私はmsbuildを使ってビルドを動かすことができますが、それは何をもたらすのでしょうか、それを別のマシンのIISインストールにどのように配備するのですか?

+0

Google? https://msdn.microsoft.com/en-us/library/dd394698(v=vs.110).aspx – tym32167

+0

@ tym32167私はそれを読んで、私が尋ねた質問に対する答えを見ていない。 – skiphoppy

+0

ああ、今私はあなたが間違って質問したことを理解しています。 – tym32167

答えて

1

Visual Studioでホストされている特殊な形式のIIS(Cassiniとも呼ばれます)を使用しているため、Runを押すと何が起きるのでしょうか?

展開時の状況をより明確に把握するには、公開ツールを使用してデスクトップ上のフォルダに展開します。そのフォルダには基本的にWebルートが表示されます。あなたのプロジェクト、任意のコードファイル、コンパイルされたバイナリを含むbinディレクトリ

通常、html、css、pngなどの静的ファイルのみがデプロイされ、コードファイルはデプロイされません。デフォルトでは、Visual Studioはバイナリにどのファイルをビルドするかを知っていて、単純に出力フォルダにコピーします(無視するファイル)。しかし、その振る舞いを上書きする必要がある場合や、VSが知らないファイルタイプを持っている場合には、これを変更することができます。ソリューションエクスプローラで、ファイルを右クリックし、プロパティを選択します。そのファイルのプロパティウィンドウには、VSがそのファイルで何をするのかを示す「ビルドアクション」が表示されます。

希望に役立ちます。

+0

CassiniはVS 2013以降、IIS Expressに置き換えられました。 –

+0

@WiktorZychlaしたがって「時には」。 IIS Expressは実際にはそれ以前の選択肢でした。 –

+0

私は、カッシーニが "IISの特殊化された形式"であると信じてくれる人を誤認させる可能性があるので、あなたはその答えを反映することができると信じています。彼がちょうどJavaから切り替えたと言っている営業担当者の場合、おそらくカッシーニが何だったかを知る必要はないでしょう。 –

1

メモを追加するだけです。

ので、

あなたはASP.NET Webサイトを使用している場合、それは十分なので、前にそれを公開し、あなたはASP.NET Webアプリケーションで作業している場合は、フォルダ

を公開するために手動でコピーする必要があります必要がありますコンパイルされる。すべてのコンパイル操作は、MSBuild - buld .netプロジェクトのコマンドラインユーティリティによって実行されます。しかし、どのようにMSBuildが理解でき、どのような方法で構築すべきか?簡単です - MSBuildの指示の特別なファイルがあります - ソリューションファイルです(例:プロジェクトをコマンドライン"C:\...\MSBuild.exe" /maxcpucount:10 MyAwesomeSolution.slnからビルドする方法です)。ソリューションファイルには、プロジェクトファイルへの参照(およびプロジェクトのビルド順など)、プロジェクトファイルにはプロジェクトに含まれるファイルへの参照が含まれています(プロジェクトのタイプ - ライブラリ/コンソール/ Webアプリケーション/ etc、フレームワークバージョン、各ファイル - ビルド/コンテンツ/リソースなど)。プロジェクトに含まれていないファイルがある場合、無視されます。

緑色のボタンを押すと、VSはまずMSBuildを実行してソリューションを構築します。ソリューションの中には、どのプロジェクトが出発点として使用されるのか、ビルドの前後に何が行われるのかが書かれていなければなりません。プロジェクト内には、情報、howtoデバッグプロジェクト(IIS、IIS express、smthgなど)があります。

したがって、私たちがいくつかのCIサーバーを使って作業するとき、解決策をコンパイルするには、ソリューションへのパスを持つCIサーバー上でMSBuildを実行すれば十分です。 Ofcourceでは、CIを使用してコンパイルされたソリューションを公開するには、追加のスクリプトを記述する必要があります(cpyファイルなど)。

また、ウェブサイトをある場所に公開する場合は、「プロフィールを公開」することができます。それはあなたのウェブサイトをIIS、FTPなどに公開することができますが、手動で「公開」ボタンを押す必要があります(ウェブプロジェクトを右クリックして公開する)。

関連する問題