1

Я прохожу через this tutorial, и я застрял на шаге 5 - Создание строки подключения и работа с SQL Server LocalDB. Ошибки я получаю:Введение в учебник ASP.NET MVC 5 и LocalDB

There was an error running the selected code generator: 

'Unable to retrieve metadata for 'MvcMovie.Models.Movie'. Unable to find the requested .Net Framework Data Provider. It may not be installed.' 

Я искал в интернете для ответа в течение нескольких дней. Я пробовал много решений, но никто не работал. Я проверил и повторно проверил код, у меня есть Visual Studio Express 2013 для Интернета с обновлением 1 на 64-разрядном ПК под управлением Windows 7. Может ли кто-нибудь помочь мне понять это, используя LocalDB, а не другой продукт БД?

Вот web.config:

<?xml version="1.0" encoding="utf-8"?> 
<!-- 
    For more information on how to configure your ASP.NET application, please visit 
    http://go.microsoft.com/fwlink/?LinkId=301880 
    --> 
<configuration> 
    <configSections> 
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 --> 
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> 
    </configSections> 
    <connectionStrings> 
    <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-MvcMovie-20140207025827.mdf;Initial Catalog=aspnet-MvcMovie-20140207025827;Integrated Security=True" 
     providerName="System.Data.SqlClient" /> 
    <add name="MovieDBContext" 
     connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movie.mdf;Initial Catalog=Movies;Integrated Security=True" 
     providerName="System.Data.SqlClient" 
    /> 

    </connectionStrings> 
    <appSettings> 
    <add key="webpages:Version" value="3.0.0.0" /> 
    <add key="webpages:Enabled" value="false" /> 
    <add key="ClientValidationEnabled" value="true" /> 
    <add key="UnobtrusiveJavaScriptEnabled" value="true" /> 
    </appSettings> 
    <system.web> 
    <authentication mode="None" /> 
    <compilation debug="true" targetFramework="4.5" /> 
    <httpRuntime targetFramework="4.5" /> 
    </system.web> 
    <system.webServer> 
    <modules> 
     <remove name="FormsAuthenticationModule" /> 
    </modules> 
    </system.webServer> 
    <runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="1.0.0.0-5.0.0.0" newVersion="5.0.0.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="1.0.0.0-1.5.2.14234" newVersion="1.5.2.14234" /> 
     </dependentAssembly> 
    </assemblyBinding> 
    </runtime> 
    <entityFramework> 
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework"> 
     <parameters> 
     <parameter value="v11.0" /> 
     </parameters> 
    </defaultConnectionFactory> 
    <providers> 
     <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" /> 
    </providers> 
    </entityFramework> 
</configuration> 

Я уже ответил на некоторые вопросы на форуме ASP.NET и размещены скриншоты, так пожалуйста, прочитайте это по - Here

+0

Я собираюсь взять удар в темноте ... вы пытались включить «Встроенная защита в свою вторую строку подключения? – PlTaylor

+0

Кажется, ваш сайт ищет файл localDb в app_data. Там он присутствует? –

+0

Строка соединения MovieDBContext включает Integrated Security = true. Нет localDb не отображается в app_data. Согласно учебнику, шаг, который я получаю, должен содержать его. – Neil

ответ

0

Извините, это была проблема с одним компьютером. Я смог сделать то же самое на другом компьютере.

1

Пожалуйста, измените строку соединения, как показано ниже:

<add name="MovieDbContext" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True" providerName="System.Data.SqlClient" /> 

Вы можете проверить следующую статью для справок:

http://www.c-sharpcorner.com/UploadFile/4b0136/working-with-model-class-and-connection-string-in-mvc-5/

Просмотрите сведения о программе просмотра событий для своего приложения. Если LocalDb поврежден, выполните следующие команды:

SqlLocalDB Create C