Длинная и короткая моя машина имела проблемы, и мне пришлось ее перестроить. Я переустановил все свое программное обеспечение и вернул резервные копии моего проекта на машине. Я пытался решить проблемы с SQL-соединением, которые я просто не могу обойти.Проблемы Web.config и MySQL.
Итак, после многих изменений и ошибок я вернул рабочую версию на свою машину. Когда я запускаю его я получаю следующее сообщение об ошибке: Parser Сообщение об ошибке: Неизвестный базы данных «p10009307_sec»
База данных известно моему SQL Workbench и если я оборвать соединение базы данных на странице и настроить его можно подключить ,
Вопрос в том, где он смотрит, что он не может найти MySQL? Я предполагаю его в Webconfig, но я не вижу ничего необычного, что сделало бы localhost отличным. Я сделал копию моего webconfig только с разделами, которые ссылаются на MySQL.
`<connectionStrings>
<remove name="LocalMySqlServer" />
<add name="LocalMySqlServer" connectionString="server=localhost;password=xxxxxxxxxx;
User Id=xxxxxxxxxx;logging=True;database=xxxxxxxxxx_sec" providerName="MySql.Data.MySqlClient" />
<add name="'LocalSqlServer" connectionString="server=localhost;database=xxxxxxxxxx_CUS;
logging=True;password=xxxxxxxxxx;User Id=xxxxxxxxxxER" providerName="MySql.Data.MySqlClient" />
<remove name="LocalSqlServer" />
<add name="p10009307_cusConnectionString" connectionString="server=localhost;
User Id=xxxxxxxxxxER;password=xxxxxxxxxx;database=xxxxxxxxxx_CUS"
providerName="MySql.Data.MySqlClient" />
<add name="p10009307_cusConnectionString2" connectionString="server=localhost;
User Id=xxxxxxxxxER;password=xxxxxxxxxx;database=xxxxxxxxxx_CUS;
SQL SERVER MODE=True" providerName="MySql.Data.MySqlClient" />
</connectionStrings>
<system.data>
<DbProviderFactories>
<add name="MySQL Data Provider" invariant="MySQL.Data.MySqlClient"
description=".Net Framework Data Provider for MySQL"
type="MySQL.Data.MySqlClient.MySqlClientFactory, MySql.Data,
Version=6.4.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>
</system.data>
<system.web>
<customErrors mode="Off" />
<compilation targetFramework="4.0" debug="true">
<assemblies>
<add assembly="MySql.Data, Version=6.4.4.0, Culture=neutral,
PublicKeyToken=c5687fc88969c44d" />
</assemblies>
</compilation>
<authorization>
<allow roles="Admin" />
</authorization>
<authentication mode="Forms">
<forms loginUrl="~/Account/Login.aspx" timeout="2880" />
</authentication>
<membership defaultProvider="MySQLMembershipProvider">
<providers>
<clear />
<remove name="MySQLMembershipProvider" />
<add name="MySQLMembershipProvider"
type="MySql.Web.Security.MySQLMembershipProvider,
MySql.Web, Version=6.4.4.0, Culture=neutral,
PublicKeyToken=c5687fc88969c44d" applicationName="/"
description="Membership Provider"
connectionStringName="LocalMySqlServer"
writeExceptionsToEventLog="True"
autogenerateschema="True"
enablePasswordRetrieval="False"
enablePasswordReset="True"
requiresQuestionAndAnswer="False"
requiresUniqueEmail="False" passwordFormat="Clear"
maxInvalidPasswordAttempts="5" minRequiredPasswordLength="7"
minRequiredNonalphanumericCharacters="1" passwordAttemptWindow="10"
passwordStrengthRegularExpression="" />
</providers>
</membership>
<profile defaultProvider="MySQLProfileProvider">
<providers>
<clear />
<remove name="MySQLProfileProvider" />
<add name="MySQLProfileProvider" type="MySql.Web.Profile.MySQLProfileProvider,
MySql.Web, Version=6.4.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"
applicationName="/" description="Profile provider"
connectionStringName="LocalMySqlServer" writeExceptionsToEventLog="False"
autogenerateschema="True" />
</providers>
</profile>
<roleManager enabled="true" defaultProvider="MySQLRoleProvider">
<providers>
<clear />
<remove name="MySQLRoleProvider" />
<add applicationName="/" description="Role Provider" connectionStringName="LocalMySqlServer"
writeExceptionsToEventLog="True" autogenerateschema="True" name="MySQLRoleProvider"
type="MySql.Web.Security.MySQLRoleProvider, MySql.Web, Version=6.4.4.0, Culture=neutral,
PublicKeyToken=c5687fc88969c44d" />
</providers>
</roleManager>
<sessionState mode="Custom" cookieless="true" regenerateExpiredSessionId="true"
customProvider="MySqlSessionStateProvider">
<providers>
<add name="MySqlSessionStateProvider" type="MySql.Web.SessionState.MySqlSessionStateStore,
MySql.Web, Version=6.4.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"
applicationName="/" description="State Provider" connectionStringName="LocalMySqlServer"
writeExceptionsToEventLog="True" autogenerateschema="True" />
</providers>
</sessionState></system.web>
</system.webServer>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" />
<bindingRedirect oldVersion="0.0.0.0-6.3.7.0" newVersion="6.4.4.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>`
Все работает локальный хост в этот момент я поставил DLL файлы в каталоге BIN, я не знаю, что мне не хватает.
Parser Сообщение об ошибке: Неизвестный базы данных 'p10009307_sec' Линия 81: Строка 82: <добавить ApplicationName = "/" Описание = "Государственный провайдер" connectionStringName = "LocalMySqlServer" writeExceptionsToEventLog = "True" Line 83: autogenerateschema = "True" имя = "MySqlSessionStateProvider" Тип = "MySql.Web.SessionState.MySqlSessionStateStore, MySql.Web, Version = 6.4.4.0, линия 84: Культура = нейтральная, PublicKeyToken = c5687fc88969c44d" /> Line 85: –
StephanM
Я не уверен, что полностью понимаю раздел «Неизвестная база данных« p10009307_sec », особенно потому, что он помечен как« ошибка парсера ». Ошибки Parser в контексте web.config будут связаны либо с синтаксисом xml-синтаксиса, либо с синтаксисом conn-string. Правильно ли ваша строка? Если есть сомнения: создайте файл .udl (переименуйте пустой текстовый файл в something.udl); дважды щелкните его, чтобы открыть, затем используйте его для настройки и проверки строки. После того, как вы закончите, откройте этот файл в блокноте, и будет создана цепочка для копирования. Кроме того, посмотрите сайт http://connectionstrings.com; возможно, вы найдете там некоторые указатели. –
это не похоже, как первые 5 атрибутов добавить? CustomProvider = "MySqlSessionStateProvider"> <добавить ApplicationName = "/" Описание = "Государственный провайдер" connectionStringName = "LocalMySqlServer" writeExceptionsToEventLog = "True" autogenerateschema = "True" name = "MySqlSessionStateProvider" type = "MySql.Web.SessionState.MySqlSessionStateStore, MySql.Web, Version = 6.4.4.0, Culture = нейтрален, PublicKeyToken = c5687fc88969c44d»/> sessionState> –
StephanM