2011年5月9日

Visual Studio LightSwitch Beta 2のSQL Server接続エラー

Visual Studio LightSwitchのBeta 2をインストールしてみました。
まずBeta版で作成したプロジェクトを使えなくなったようです(まだ正式版じゃないから、しょうがないですが)。それよりはまったのは新規LightSwitchプロジェクトを作成しても、ビルドで下記エラーが発生してしまいます。
An error occurred while establishing a connection to SQL Server instance '.\SQLEXPRESS'. The user instance login flag is not supported on this version of SQL Server. The connection will be closed.

ググってみたら、LightSwitchで開発する際、SQL Serverのuser instance機能を利用します、自分の環境ではExpress Editionではないため、user instance機能をサポートしません。対策はいくつかあります。

方法1:SQL Serverインスタンスのuser instance機能を有効にする。

ただし自分のSQL Server 2008 R2環境ではこの方法がだめ
EXEC sp_configure 'user instances enabled', 1
GO
Reconfigure
GO

方法2:SQL Server Expressインスタンスを作成(名前はSQLEXPRESS)

自分の環境ではこの方法で解決した。
ただし、同じ環境で違うバージョンのSQL Server Express Editionをインストールしたことがある場合、「Failed to generate a user instance of SQL server」エラーが発生する可能性があります。
その場合下記フォルダにあるファイルをクリアします
%USERPROFILE%\Local Settings\Application Data\Microsoft\Microsoft SQL Server Data\SQLEXPRESS

方法3:SQL Server Expressインスタンスを作成(名前は任意)

作成した後で、LightSwitchが利用するインスタンス名を作成したインスタンスの名前に変更する必要があります。

Visual Studioの「ツール」=>「オプション」=>「データベースツール」=>「データ接続」の「SQL Serverインスタンス名」を変更すれば、新規プロジェクトは該当インスタンスを利用する。

image

既存プロジェクトの場合、手動でxxx.lsprojのSqlExpressInstanceNameタグ、app.configのLightSwitchConnectionStringにあるインスタンス名を変更する必要があります

以上

0 件のコメント:

コメントを投稿