2015-06-14 4 views
1

Я использую asp.net mvc и использую сущность framework в библиотеке классов.строка подключения web.config не установлена ​​Контекст?

мой объект контекста:

public class AmarContext : DbContext 
{ 
    public AmarContext() 
     : base("AmarGiriEntities") 
    { 

    } 

    public DbSet<AmarTable> Amars { get; set; } 
    public DbSet<GuidDetailsTable> GuidDetails { get; set; } 
    public DbSet<GuidIDTable> GuidIDs { get; set; } 
    public DbSet<IPsTable> IPs { get; set; } 
} 

мой Web.config ConnectionString:

<configuration> 
    <connectionStrings> 
    <add name="AmarGiriEntities" connectionString="Data Source=localhost;Integrated Security=False;Initial Catalog=FrameSoftAmar;User ID=username;Password=pass;Connect Timeout=15;Encrypt=False;Packet Size=4096" /> 
    </connectionStrings> 
    <configSections> 

    <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"> 
     <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" /> 
     <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" /> 
    </sectionGroup> 
    </configSections> 

    <system.web.webPages.razor> 
    ... 

но если я проверить строку соединения вернуть мне это:

Data Source=(localdb)\mssqllocaldb;AttachDbFilename=|DataDirectory|AmarGiriEntities.mdf;Initial Catalog=AmarGiriEntities;Integrated Security=True;MultipleActiveResultSets=True 

почему? , если я тестирую свою библиотеку классов в консольном приложении и устанавливаю строку подключения в app.config своих works.but из asp.net mvc не работает.

+0

Попробуйте добавить к имени поставщика: <добавить имя = "AmarGiriEntities" ConnectionString = "Источник данных = локальный; Integrated Security = False; Initial Catalog = FrameSoftAmar; ID пользователя = имя пользователя; = ПАРОЛЬ Время ожидания подключения = 15; Шифрование = False; Размер пакета = 4096 "providerName =" System.Data.SqlClient /> – Dreamweaver

+0

Благодарим вас за повтор .. Я добавил имя провайдера не работает ... –

+0

Некоторые приложения предоставляют подключение по умолчанию string. По этой причине диспетчер конфигурации приложения имеет несколько строк подключения. Если вы столкнулись с этой проблемой, вы можете добавить '' сверху в раздел ''. – Stefan

ответ

0

Вы пробовали добавить <clear/> тег как комментарий Stefan? Он должен решить.

Проверьте этот раздел тоже:

<entityFramework> <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework"> <parameters> <parameter value="Data Source=(localdb)\v11.0...." MultipleActiveResultSets=True" /> </parameters> </defaultConnectionFactory> </entityFramework>

Если не решить, проверить, где находится файл web.config. Помните, что над этим файлом существует соглашение о приоритете.

См: ASP.NET Configuration File Hierarchy and Inheritance

Смежные вопросы