F# Webプログラミング入門

導入

では最初に簡単なサンプルとして、クライアント側のボタンをクリックしたら、サーバーでHello Wolrdという文字列をラベルに格納し、クライアントにそれを表示するプログラムを作ってみましょう。

ASP.NET

ASP.NETはMicrosoftが提供するWebアプリケーション技術です。 F# Webプログラミング入門のサンプルはASP.NETで開発してきます。

Webサーバーの準備

サーバー側のプログラムはWebサーバー上で動作します。 IISなどWebサーバーを準備してください。
IIS付属のOSを購入されてない方はフリーのASP.NETが動くWebサーバーの Abyss Web Server などを使われてはいかがでしょうか。
なお、サーバー設定に手ASP.NETを有効にするのをお忘れなく。 忘れてしまうとプログラムが動作しません。

サンプルプログラム作成

■helloworld.aspx

<%@ Page Language="F#" %> 

<script language="F#" runat="server">
    member this.btn_OnClicked(sender: obj, e: EventArgs) =
        this.lblMessage.Text <- "Hello World"
</script>
<html>
<head><title>HelloWorld</title></head>
<body>
<form runat="server"> 
	<asp:Button ID="btnClick"   Text="Click Here" OnClick="btn_OnClicked" runat="server"/><br /> 
	<asp:Label  ID="lblMessage" Text="" runat="server" /> 
</form>
</body>
</html> 

■web.config

まだF#はWebサーバー側でデフォルトの言語として組み込まれていることがまずないので、web.configに設定する必要があります。

<configuration> 
<system.web> 
<compilation debug="true">
 <compilers> 
   <compiler
     language="F#;f#;fs;fsharp" extension=".fs"
     type="Microsoft.FSharp.Compiler.CodeDom.FSharpAspNetCodeProvider,
         FSharp.Compiler.CodeDom, Version=1.9.6.2,
         Culture=neutral, PublicKeyToken=a19089b1c74d0809"/> 
   </compilers> 
</compilation> 
</system.web> 
</configuration> 

プログラム実行

ドキュメントルートに、先ほど格納したhelloworld.aspx, web.configを格納します。

ブラウザのURLに 127.0.0.1/helloworld.aspx と入れてみましょう

■実行結果

ボタンをクリックすると・・・

サーバーでプログラムが実行され、HelloWorldが表示されました!

inserted by FC2 system