0

Studio 2012 で、dotnet 4.0 を使用してフォーム認証を使用する MVC4 プロジェクトを作成しました。web.config 内のデータベースの接続文字列を変更して、ローカルの mdf ファイルではなく sql データベースを使用するようにしました。

アップロードした後、ここで確認できるエラーに遭遇しました:

「ファイルまたはアセンブリ 'MySql.Web、Version=6.6.4.0、Culture=neutral、PublicKeyToken=c5687fc88969c44d' またはその依存関係の 1 つを読み込めませんでした。指定されたファイルが見つかりません。」

Microsoft は MySql-Assemblys を新しい MVC4 プロジェクトにバインドしないと確信しています。1&1の設定ミスだと思います。

それとも本当に私のせいですか?

4

1 に答える 1

0

以下のようにして動作させることができました。.Net Framework 4.0 を対象とする VS2012.2、MVC4 を実行しています。ホスティング プロバイダー (DiscountASP.Net) の .Net 4 サーバーにデプロイしました。

  • .Net コネクタを追加MySQL.Data, MySQL.Data.EntitiesせずにMySQL.WebNuGet.代わりに MySQL サイトからダウンロードしてください。この投稿の時点では、MySQL.Data、MySql.Data.Entity、および MySql.Web のバージョンは 6.6.5 でした。既に持っている場合はNuGet、必ずパッケージ マネージャーからアンインストールしてください。

  • .net 4 の MySQL asm ref を、MySQL が .net コネクタをインストールするプロジェクトに手動で追加します (私の場合は にありましたC:\Program Files (x86)\MySQL\MySQL Connector Net 6.6.5\Assemblies\v4.0)。Copy Local必ず3 つすべての asms を確認してください。

  • web.config で以下を追加または変更します。

<configuration><connectionStrings>セクションでは:

<add name="MyProviderDbConn" connectionString="server=mysql01.someurl.com;User Id=dbuser1;Pwd=ToManySecrets;Persist Security Info=True;database=MyDbSchemaName;Use Compression=True;port=3306" providerName="MySqlMembershipProvider" />

<configuration><system.web>セクションでは:

<membership defaultProvider="MySqlMembershipProvider">
<providers>
<clear />
<add name="MySqlMembershipProvider" type="MySql.Web.Security.MySQLMembershipProvider, MySql.Web, Version=6.6.5.0, PublicKeyToken=c5687fc88969c44d" autogenerateschema="true" connectionStringName="MyProviderDbConn" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" passwordStrengthRegularExpression="" applicationName="/" />
</providers>
</membership>
于 2013-04-01T08:54:45.967 に答える