私は何年もasp.netで開発してきましたが、通常、cmsに使用するのと同じSQLサーバーデータベースにメンバーシップとロールを設定しています。ただし、現在のプロジェクトではいくつかの管理ページをパスワードで保護する必要があるだけなので、Microsoft の Web サイト テンプレートに組み込まれているアカウント フォルダーのセットアップを試してみようと思いました。これまでのところ、それは悪夢でした。
ローカル マシンでログインが機能していますが、サーバーにアップロードすると、次のエラーが発生します。
" SQL Server への接続を確立しているときに、ネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからないか、アクセスできませんでした。インスタンス名が正しいこと、および SQL Server がリモート接続を許可するように構成されていることを確認してください。(プロバイダー: SQL ネットワーク インターフェイス、エラー: 26 - 指定されたサーバー/インスタンスの検索エラー)" Microsoft が提供する接続文字列には、インスタンス = true と表示されます。
ホスティング プロバイダーである GoDaddy は、App_Data フォルダー内の MDF ファイルは専用サーバーでのみ機能すると言って、接続文字列を修正できるかどうかを確認するという私の要求に応えました。(私は懐疑的です...)
さらに難しいことに、SQL Express (.mdf) データベースを開くと、登録フォームを使用して設定したアカウントを確認できます。しかし、AP 内の Web 構成ページでデフォルトの aspnetsqlmembershipprovider をテストしようとすると、次のようなメッセージが表示されます。
データベースへの接続を確立できませんでした。SQL Server データベースをまだ作成していない場合は、Web サイト管理ツールを終了し、aspnet_regsql コマンド ライン ユーティリティを使用してデータベースを作成および構成してから、このツールに戻ってプロバイダーを設定します。
何が起こっているのかを理解するのに本当に助けていただければ幸いです。当然の解決策がない場合は、少なくともこのことをインテリジェントな方法で解体し、webconfig で認証を設定できます。これには 10 分かかります。
どうもありがとう。