ExpresswebでASP.NET構成を動かす

Expresswebを借りたは良いけど、よく考えたら特にやりたい動的コンテンツもなかったので、 あまり深く追求してこなかった私ですが、今回少し踏み込んでDB設定をしてみました。
それにしてもExpresswebに用意されたマニュアルの不親切なこと。
パスワードポリシーとかの存在を全く書いてないよ。

まあ安かろう不親切だろうってことなんですかね。

  • はじめに

ASP.NET構成の設定値は初期状態のままだとApp_Dataの下にAspnetdb.mdfに保存される。
正直Expresswebで動かせるかどうかよく分からなかったのと、せっかく3インスタンスほどDB空間が提供されてるから、やはりそれを使ってみたい。
と、そんな程度の理由でDBを載せ替えてみることにした。
ということで備忘録代わりに記事にしてみた。

(1).ASP.NET構成のDB空間を作成する
C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regsql.exe
「アプリケーション サービスのために SQL Server を構成する」を選択して
DB名はデフォルトのaspnetdb以外にすること

(2).DB接続ユーザーの作成する
ManagementStudio(MSの純正SQL Server用GUIツール)の上でユーザーを作成する。

Expresswebのポリシーに引っ掛からないように以下のルールで生成する必要がある。

ユーザー名:4文字以上
パスワード:8文字以上英数記号が必要

※.作成したDBに対してユーザー権限に[db_owner]を付与しておくこと。

(3).接続文字列をWeb.configに設定する

<connectionStrings>
 <remove name="LocalSqlServer"/>
 <add name="LocalSqlServer" connectionString="Persist Security Info=False;Server=PCNAME\SQLEXPRESS;Initial Catalog=hogedb;PASSWORD=$Hoge1234;User ID=hogera" providerName="System.Data.SqlClient" />
</connectionStrings>

※.ExpresswebのDBサーバー名はExpresswebコントロールパネルにログインして
[スペース]-[(スペース名)]-[スペース詳細を表示]に記述してある

(4).ASP.NET構成の接続テスト
Web.configを保存したらASP.NET構成にて必要な設定を行う
ASP.NET構成

(5).ローカル側にてデータのエクスポート
ManagementStudioにてDB名を右クリック [タスク]-[スクリプトの生成]にてクエリを生成する
SQL Server Management Studio

(6).Expresswebにデータのインポート
基本的にExpresswebのSQLServer操作はmyLittleAdminというWebアプリにて操作するらしい。
こんなツール知らなかったけど、phpMyAdminよりは出来が良いかもしれないと個人的には思った。
myLittleAdminはコントロールパネルから[データベース]-[SQL Server 2008]-[データベースを参照]にて起動する。
起動したmyLittleAdminの[ツール]-[新しいクエリ]を開き、先ほど生成したクエリをペーストして[実行]ボタンを押せばインポート完了。

一応、これで作業は一通り完了。

ちなみに私の環境は以下の通りです。

Visual Studio 2008 Professional

SQL Server 2008 Express

なお、ここまでの説明で意味がサッパリな人はExpresswebを使わないほうが無難です。

あとHTTPモジュールが動かないのが解決できない。 気が向いたらサポートに問い合わせることにしよう。

などとここまで書いてから箇条書きのところに

<ol>を使おうとしたら、連続してないと駄目らしい。
勝手に妙なタグ補完されて、意図したレイアウトにできない。
有名だから使ってみたけど、こんな使いにくいブログにするんじゃなかった・・・。

コメントを残す

メールアドレスが公開されることはありません。