Ошибка строки подключения к объектам данных - PullRequest
0 голосов
/ 11 ноября 2009

Должно быть, я где-то что-то изменил, но, черт побери, могу ли я понять, что это такое.

У меня есть DAL, который обрабатывает все мои данные (как обычно DAL) к моей базе данных SQL Server. Это включает в себя Entity Model, классы хранилища и строку подключения в файле App.Config.

Где-то в этой части я, должно быть, что-то изменил и теперь получаю следующее исключение каждый раз, когда пытаюсь просмотреть страницу в своем приложении MVC:

указанное именованное соединение либо не найден в конфигурации, не предназначен для использования с Поставщик EntityClient или недействительный.

Это любая страница, которая наследует <IEnumerable<DataAccess.Layer.Class>>. Чего мне не хватает?

Строка подключения:

<add name="JobTrackEntities" 
     connectionString="metadata=res://*/JobTrackDataModel.csdl|res://*/JobTrackDataModel.ssdl|res://*/JobTrackDataModel.msl;provider=System.Data.SqlClient;provider connection string='Data Source=.\SQLEXPRESS;AttachDbFilename=&quot;C:\Users\Phil\Documents\Visual Studio 2010\Projects\JobTrack\trunk\JobTrack\App_Data\JobTrack.MDF&quot;;Integrated Security=True;User Instance=True;MultipleActiveResultSets=True'" providerName="System.Data.EntityClient" />

фрагмент кода Designer.cs:

public JobTrackEntities() : 
        base("name=JobTrackEntities", "JobTrackEntities")
{
    this.OnContextCreated();
}
/// <summary>
/// Initialize a new JobTrackEntities object.
/// </summary>
public JobTrackEntities(string connectionString) : 
        base(connectionString, "JobTrackEntities")
{
    this.OnContextCreated();
}
/// <summary>
/// Initialize a new JobTrackEntities object.
/// </summary>
public JobTrackEntities(global::System.Data.EntityClient.EntityConnection connection) : 
        base(connection, "JobTrackEntities")
{
    this.OnContextCreated();
}

Ответы [ 4 ]

2 голосов
/ 11 ноября 2009

Если вы ссылаетесь на свой проект сущности ADO.NET в другом проекте , взгляните на

http://blogs.msdn.com/bindeshv/archive/2009/09/04/referring-ado-net-entity-project-in-a-different-project.aspx

0 голосов
/ 07 августа 2011

У меня была та же проблема, и после попытки исправить ее множеством разных способов у меня возникла идея, что VS глючит, поэтому я упростил решение с новыми проектами (Entity Framework и тестовый проект), скопировал файл конфигурации из dll в тестовый проект, и я получил ту же ошибку. Затем я удалил файл конфигурации из тестового проекта, добавил новый файл конфигурации, скопировал содержимое строки подключения в файл конфигурации, и он заработал.

0 голосов
/ 11 ноября 2009

Только Я также вижу, что может вызвать проблему с использованием жесткого пути. Вы пытались вставить \?

C:\\Users\\Phil\\Documents\\Visual Studio 2010\\Projects\\JobTrack\\trunk\\JobTrack\\App_Data\\JobTrack.MDF

Также я надеюсь, что вы проверили и дважды проверили, что путь правильный? :)

Вы пытались получить путь к серверу, а затем добавить к нему app_data \ jobtrack.mdf?

Вы пытались избавиться от всего пути? Я спрашиваю, потому что, и я забываю, при каких обстоятельствах это правильно, .Net будет выводить путь и папку app_data при подключении к базе данных. опять же, вам нужно исследовать это.

Также иногда запуск утилиты конфигурации ASP.NET может исправить проект, сломать проект или определить, где проблема.

0 голосов
/ 11 ноября 2009

Риск получить отрицательный голос, который я замечаю, всякий раз, когда я использую класс dbml S2L, сталкиваюсь с той же проблемой, когда я изменяю файл dbml через интерфейс, а не в коде.

это сбрасывает мою строку подключения, и мне нужно изменить ее обратно для чтения из web.config.

не знаю, если это ваша проблема @Phil.

Если нет, не могли бы вы предоставить больше информации?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...