九州ドットネット倶楽部別館

facebook 九州ドットネット倶楽部の別館となります。https://www.facebook.com/groups/301814289891768/ ...現在ほぼ管理人の開発備忘録化しています。

WCF Data Servicesを使いこなそう(4)

今回はWCF Data ServiceをExpressWebに設置するの第2弾。

おそらく次回やったら、同じところではまりそうなのでエントリ。

 

ExpressWebにSQLSERVERベースのアプリを設置するの巻

 

1.ExpressWeb側の設定

ExpressWebでは、mdfをアタッチして利用することは出来ないようなので、予めEW側でDBとユーザーを作っておく必要があります。

移行方法はこちらを参照。

http://secure.windowshosting.jp/knowledgebase.php?action=displayarticle&id=100

ちなみに、ExpressWebではmdfは300Mまでみたいです。

http://secure.windowshosting.jp/knowledgebase.php?action=displayarticle&id=20

本格的に使うのであれば、AzureやAWSを検討しないといけないようです。

  たしかsdf(SQLSERVERCompact)は4Gまでいけるんじゃなかったっけ?

性能はどうなのか分かりませんが、ExpressWebでの運用であればsdfがよいのかな?

 

2.VisualStudio2010の設定など

(1)「SQLのパッケージ化/発行」

プロジェクトのプロパティーを選択すると出てくる「SQLのパッケージ化/発行」を設定する必要があります。

Web.configからインポートボタンを押すと、接続情報が自動的に取り込まれます。

複数出てくる場合は、ターゲットDBへの接続情報以外は削除しておきます。

f:id:kizakurakun:20120926111122j:plain

「対象データーベースの接続文字列」にはExpressWeb側DBへの接続文字列を記入します。

http://secure.windowshosting.jp/knowledgebase.php?action=displayarticle&id=107

ここに記入した接続文字列は、配置する場合だけに利用されます。

アプリケーションで利用する接続文字列はやはりweb.configに設定する必要があります。

「ソースデータベースの情報」

既存の...にチェックを入れてください。先にインポートしているのでソースデーターベース接続文字列は既に設定されているはずです。

スクリプトオプションは、状況に応じて選択してください。

 

(2)web.config

ソリューションエクスプローラーで,全てのファイルを表示。

するとweb.configの下に、web.debug.configとweb.release.configが出てきます。

web.release.configを開くと

    以下の例では、"Match" ロケーターで "MyDB" という値の "name" 属性が見つかった

    場合にのみ、"SetAttributes" 変換により "connectionString" の値が変更され、

    "ReleaseSQLServer" が使用されるようになります。

 とコメントがあります。

この通り接続文字列を記入しておくと、releaseで配置した時に置き換えてくれるので便利!

 

3.2回目以降の配置。

DBが既に作成されているので、このままではエラーになってしまいます。

「Webのパッケージ化/発行」で「SQLのパッケージ化/発行」タブで構成した...のチェックを外すとDBを作成しなくなります。

 

 以上メモ!

WCF Data Servicesを使いこなそう(3)

WCF Data Servicesを作ってローカルでうまく動作した。

で、実際にサービスとして提供するためにExpressWebに配置。

そしたら

 このコレクションには、スキーマ http を持つアドレスが既に含まれています。

とうことでうまくいかない。

ググって見ると、

Web.configに

 <system.serviceModel>

    <serviceHostingEnvironment aspNetCompatibilityEnabled="true"  multipleSiteBindingsEnabled="true" />

  </system.serviceModel>

を追加してやればいいらしい。

この修正をした後配置。

無事サービスを提供することができました。

 

WCF Data Servicesを使いこなそう(2)

GETはそのままWEBで確認出来るけど、PUT等は無理ですね。

ということでfiddlerというツールが紹介されていました。

なかなか便利らしい。

http://blog.loadlimits.info/2009/09/%E5%AE%9F%E3%81%AFfiddler%E3%81%8C%E3%81%99%E3%81%94%E3%81%99%E3%81%8E%E3%81%9F%E3%81%AE%E3%81%A7%E3%80%81%E6%A9%9F%E8%83%BD%E3%81%BE%E3%81%A8%E3%82%81%E7%B4%B9%E4%BB%8B/

 

http://codezine.jp/article/detail/5059?p=3

WCF Data Servicesを使いこなそう(1)

昨日から色々ブログを見て回ったところ、WCF Data Servicesってのがすごく便利そう。

ということで、こちらのサイトを参考にプログラムを作ってみようと思う。

http://msdn.microsoft.com/ja-jp/library/dd728275(v=vs.100).aspx

WCF Data ServicesはもともとADO.NET Data Services と呼ばれていたモノです。

サービス自体はデータベースが用意されていればカンタンに作成できますね。

作成したサービスは、こちらの手順で確認出来ます。

http://msdn.microsoft.com/ja-jp/library/dd728279(v=vs.100).aspx