inohilog

/var/log/inohiro.log

MonoDevelopを使ってみる(Console, ASP.NET)

Monoをインストールしたら、マウントされたdmgMonoDevelopIDE)などが入っていたので、Applicationsにインストール。
しかし実行してみたところ、日本語が化け化けで動かない。ということでMacの言語設定を英語にして一度ログアウト。再度ログインしてMonoDevelopを起動したところ、うまく動きました。

これが新しいソリューションを作るときのウィザード。Visual Studioそっくりです(きっとそっくりに作ってるんだろうけど)。
で、新しくソリューションを作ろうとしたんですが、「Project Features」なるものが表示された。オプションのようなものかな。

UNIX Integrationは、UNIXファイルシステムに対応させます的な機能のような感じです。


とりあえず今回は何もチェックしないで作ってみた。そしたらcsファイルではなく、ilファイル(中間言語)が表示されて、なんでなのかよくわからない。。。

C#だけじゃない!

はてなキーワードには、MonoDevelop

UNIX/GNOME用のC#/.NET統合開発環境(IDE)。フリーソフトウェア

と書いてありますが、C#だけのIDEだけじゃありません。VB.netもできます。ということでVB.netよくわからないけど、遊んでみた。
するとなんとVB.netにはASP.NETが!

プロジェクトをつくってみた。またProject Featuresの追加が出てきましたが、スルーで。
今度はASP.NETなのでaspxファイルが表示されます。Global.asaxファイルもあります。


そのままツールバーからRun(実行)を押してみると、がーっと出力が流れてから、どうやらWebサーバーが起動した模様!!!

するとすぐにSafariが動き出して、aspxのページを表示しやがった!!!なんだかちょっと感動的。

VB.netがわからないものの、どうにか何か動かせないかなと思って、aspxファイルに

<asp:TextBox runat="server" id="text1"></asp:TextBox>
<asp:Button runat="server" id="button1" Text="Push Me!" OnClick="button1_click" />
<br />
<asp:Label runat="server" id="label1" />

と書き、Default.aspx.vbには

Protected Sub button1_click( ByVal sender As Object, ByVal e As System.EventArgs ) Handles button1.Click
	label1.Text = text1.Text
End Sub

と書いてみた。
しかしエラーが2件。

  • Object reference not set to an instance of an object(VBNC99999)]
  • Could not resolve the name 'button1'(VBNC30451)]

どうやらDefault.aspxファイルとDefault.aspx.vbファイルの関連付けがうまくできてないのかなと思い、aspxファイルを見たとろ「Pageディレクティブ」の所に「CodeFile要素」が記述されていなかったので、

CodeFile="Default.aspx.vb"

と書き足した。ものの、動かない。
あとVBって「this」句ないんですね。とりあえず眠いからもう寝る。
明日以降。C#ASP.NETはできないんだろうか。。。