none
WebPartsコントロール RRS feed

  • 質問

  • 自分の端末を開発兼webサーバーに、仮想化サーバーをSQLサーバーにして開発しています。

    Webpartsコントロールを使ってユーザーごとに違う画面が出てくるようにしたいのですが

    うまくいきません。「最小化」「閉じる」といったボタンが表示されません。

    作成手順が細かく書いてあるwebサイトはないでしょうか。

    vb2010で開発しています。

     

    2010年12月8日 9:02

回答

  • > 勉強が足りないのかサーバーの場所が変わったらどうしたらよいの
    > か分かりません。

    「勉強が足りない」のであれば、まずは仮想化サーバーを使うのはや
    めて、開発環境の同じ PC に Express Edition の SQL Server をイン
    ストールして、ユーザーインスタンスを利用した接続で開発を進める
    ことをお勧めします。

    仮想化サーバーを使って実環境に近い状態で試験するのは、その後で
    も遅くないと思います。

    2010年12月9日 15:06

すべての返信

  • > 作成手順が細かく書いてあるwebサイトはないでしょうか。

    Web サイトは知りませんが、本なら「10 日でおぼえる ASP.NET 2.0 入門教室」

    に手順が載っています。

    2010年12月8日 16:05
  • ありがとうございます。

    今 10 日でおぼえる ASP.NET 3.5を見ながら勉強中です。

    ただ、サンプルはDBがwebサーバーと同じところにあるようでした。

    勉強が足りないのかサーバーの場所が変わったらどうしたらよいのか分かりません。

    2010年12月9日 0:30
  • データベースとの接続自体はweb.configの接続文字列の部分を書き換えることでなんとかなると思いますが。

    Webパーツを使って各ユーザーの情報を保持するためには、データベースがASPNETが要求するテーブル、ストアドプロシージャ等を含んだものになっている必要があります。
    開発環境の中では、Webの管理ツール等から設定するとDBが自動的に生成されます。
    このDBをうまく使う必要があります。

    そのあたりのデータベースの設定はきちんとできていますでしょうか?

     


    あおい情報システム株式会社 小野修司(どっとねっとふぁん)
    2010年12月9日 6:09
  • ありがとうございます。

    多分ご指摘の通りだと思います。

    エラーメッセージが

    「SQL Server への接続を確立しているときにネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからないかアクセスできません。インスタンス名が正しいこと、および SQL Server がリモート接続を許可するように構成されていることを確認してください。 (provider: SQL Network Interfaces, error: 26 - 指定されたサーバーまたはインスタンスの位置を特定しているときにエラーが発生しました) 」

    と出ています。

    web.configには自動生成されたコードがありました。connectionStringsを自分で作ったものに替えたのですがうまくいきませんでした。

    <configuration>
      <connectionStrings>
        <add name="AAABBBCCC" connectionString="Data Source=XXXXX;Initial Catalog=ASPTEST1;Persist Security Info=True;User ID=sa;Password=XXXX" providerName="System.Data.SqlClient"/>
      </connectionStrings>

      <system.web>
        <compilation debug="true" strict="false" explicit="true" targetFramework="4.0" />

        <authentication mode="Forms">
          <forms loginUrl="~/Login.aspx" timeout="2880" />
        </authentication>

       
        <membership>
          <providers>
            <clear/>
            <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="AAABBBCCC"
                 enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false"
                 maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10"
                 applicationName="/" />
          </providers>
        </membership>

        <profile>
          <providers>
            <clear/>
            <add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/"/>
          </providers>
        </profile>

        <roleManager enabled="true">
          <providers>
            <clear />
            <add connectionStringName="AAABBBCCC" applicationName="/" name="AspNetSqlRoleProvider"
              type="System.Web.Security.SqlRoleProvider" />
            <add applicationName="/" name="AspNetWindowsTokenRoleProvider"
              type="System.Web.Security.WindowsTokenRoleProvider" />
          </providers>
        </roleManager>

      </system.web>

      <system.webServer>
         <modules runAllManagedModulesForAllRequests="true"/>
      </system.webServer>

    loginコントロールのログインはできています。なので接続は合っていると思います。

    sqlexpressがないとできないのでしょうか。

    2010年12月9日 8:41
  • > 勉強が足りないのかサーバーの場所が変わったらどうしたらよいの
    > か分かりません。

    「勉強が足りない」のであれば、まずは仮想化サーバーを使うのはや
    めて、開発環境の同じ PC に Express Edition の SQL Server をイン
    ストールして、ユーザーインスタンスを利用した接続で開発を進める
    ことをお勧めします。

    仮想化サーバーを使って実環境に近い状態で試験するのは、その後で
    も遅くないと思います。

    2010年12月9日 15:06
  • ありがとうございます。

    開発マシンで試すというのも方法であると思います。開発マシンは重く、空きも少ないのでDBは作りたくありません。

    ネットワーク上のSQLSereverとログインコントロールの接続は実装できているので

    ちょっと変えればできるかなと思っていました。

    調査をするための時間見積りと実機の用意が甘かったようです。

    あきらめます。

     

    2010年12月10日 2:59