1

IISサーバーにリモートデータベース接続を使用してASP.Netアプリケーションを展開する必要があります。

デプロイメントはデータベースなしで正常に機能しました。そして、IISサーバーでそのアプリケーションを実行することができました。

リモートデータベースを使用するアプリケーションに来ると、C#コードで接続文字列を指定しました。そして接続されています。

web.configはこの接続文字列を持っています:

<configuration>
  <connectionStrings>
    <add name="ApplicationServices"
        connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true"
        providerName="System.Data.SqlClient" />
  </connectionStrings>

次のように、これをデータベース接続のクレデンシャルに置き換えました。

<configuration>
  <connectionStrings>
    <add name="ApplicationServices"
         connectionString="Data Source=RemoteHost,1433;Initial Catalog=DBNAME;user Id=MyUserId;Password=MyPassword"
         providerName="System.Data.SqlClient" />
  </connectionStrings>

[パッケージ/公開]オプションで、(web.configからインポート)を選択して展開しました。次に、次のエラーが発生しました。

Webデプロイメントタスクが失敗しました。(タイプ'dbFullSql'およびパス'Data "Data Source = RemoteHost、1433; Initial Catalog = DBNAME; user Id = MyUserId; Password = MyPassword"のオブジェクトは作成できません。)

タイプ'dbFullSql'およびパス"DataSource = RemoteHost、1433; Initial Catalog = DBNAME; user Id = MyUserId; Password=MyPassword"のオブジェクトは作成できません。

ソースが無効です。
データベース'DBNAME'のスクリプトが失敗しました。
データベース'DBNAME'のスクリプトが失敗しました。
インデックスが配列の範囲外だった。

ASP.Netは初めてです。誰か助けてください。

前もって感謝します

4

1 に答える 1

2

Web展開パッケージを正しく構成しなかったと思います。正しく構成できます。[プロジェクト]をクリックし、[プロパティ]を選択して、[パッケージ/ SQLの公開]に移動します。ウォークスルーのリンクを追加します:Web展開パッケージを使用したWebアプリケーションプロジェクトの展開(パート1 4)VS2010の場合 http://msdn.microsoft.com/en-us/library/dd483479(v=vs.100).aspx

于 2013-01-12T12:44:12.373 に答える