Windows(SQL) AzureでSeasar.NETとDBFlute.NETを動かす
Windows AzureでQuillとDBFlute.NET(C#)を動かしてみました。CRUDをするだけの単純なモノです。
動かすための手順は以下の通りです。
- 開発環境をインストール
- ASP.NET MVCでWebロールを作る(ASP.NETでも良いです)
- ローカル環境(ASP.NET MVC+SQL Server+Seasar.NET+DBFlute.NET)で開発
- SQL Azure ManagerでSQL Azureにテーブルとデータを準備
- ローカルで開発したアプリの接続先をSQL Azureに変更
- Windows Azureにデプロイ
DBFluteは、RDBMS向けのO/Rマッパーですが、SQL Serverで開発して、そのままSQL Azure(クラウド用SQL Server)で動かすことができます。Quill(Seasar.NET)やAutoMapperといった一般的なOSSもそのまま動きました。
クラウド開発は、敷居の高いものととらえがちですが、Windows AzureとSQL Azureを使う分には、これまでと大きな違いがなく開発できるので、なじみやすいと思います。
ついでですが、ASP.NET MVCとSeasar.NET(Quill)の組み合わせ例です。ただし、毎回初期化されている気がするので改善の必要ありです。
public class MvcApplication : System.Web.HttpApplication { protected void Application_Start() { //ContorllerをQuillを使って取得 ControllerBuilder.Current.SetControllerFactory(new QuillControllerFactory()); } }
public class QuillControllerFactory : DefaultControllerFactory { private QuillContainer _QuillContainer; protected override IController GetControllerInstance(Type controllerType) { if (controllerType == null) { return null; } _QuillContainer = new QuillContainer(); QuillComponent component = _QuillContainer.GetComponent(controllerType); Object obj = component.GetComponentObject(controllerType); QuillInjector injector = QuillInjector.GetInstance(); injector.Inject(obj); IController icontroller = obj as Controller; return icontroller; } }