Где сначала найти файлы .csdl, .ssdl и .msl в коде Entity Framework 4.0?

Я хочу запустить тесты с Effort, и для этого мне нужно указать строку подключения, которая также содержит ссылку на файлы .csdl,, .ssdl и .msl. (Нерабочая) строка подключения теперь выглядит так:

<add name="SQLAzureConnection" connectionString=
 "metadata=res://*/Model.projectContext.csdl|
res://*/Model.projectContext.ssdl|res://*/Model.projectContext.msl;
  provider=System.Data.SqlClient;
  provider connection string=&quot;Data Source=(LocalDb)\v11.0;Initial Catalog=Database_Nieuw;Integrated Security=false;MultipleActiveResultSets=False&quot;"
 providerName="System.Data.EntityClient" />

Часть Model.projectContext неверна, но я не знаю, какой она должна быть.

Когда я использую эту строку, я получаю следующую ошибку в тесте, который использует эту строку подключения для создания имитации подключения к базе данных с Effort.

Test: failed
Result Message: Initialization method  
project.Tests.Controllers.ShoppingCartTest.Initialize threw exception. 
System.InvalidOperationException: System.InvalidOperationException: Resource res://*
/Model.seashell_brawl_corveeContext.csdl not found..

Я понятия не имею, где я могу найти этот файл .csdl, я знаю только, что он необходим. Я не могу создать их из своего файла .emdx, потому что у меня есть первая база данных кода, и щелчок правой кнопкой мыши в дизайнере не дает возможности Update database from model как другой вопрос дал в качестве решения. Я также установил обработку артефактов метаданных" параметр "Встроить в выходную сборку".

Кто-нибудь знает, где я могу найти эти файлы и как я могу правильно ссылаться на них?

/Редактировать:

Хорошо, теперь мне ясно, что файлы не существуют в первых проектах кода. Используя подсказку user20... ниже в комментариях, строка подключения теперь работает. Новым вопросом является следующее:

`Test Outcome:  Failed  error 0040: The Type date is not qualified with a namespace or 
alias. Only primitive types can be used without qualification.` 

Очень странно, так как я везде использую [DataType(DataType.DateTime)]. Кто-нибудь знает, как это решить?


person Erwin Rooijakkers    schedule 02.12.2013    source источник
comment
При использовании Code First у вас нет файлов .csdl, .ssdl и .msl. Строка подключения также отличается. В основном правильная строка подключения — это то, что описывается как строка подключения провайдера в вашей текущей строке подключения.   -  person user3038092    schedule 02.12.2013
comment
Ладно, это многое объясняет! Поэтому я должен использовать строку подключения провайдера. Я постараюсь и отчитаюсь. /Изменить Хорошо, я изменил это. -> Теперь он говорит, что ключевое слово источника данных не поддерживается.   -  person Erwin Rooijakkers    schedule 02.12.2013
comment
@user3038092 user3038092 Как мне обратиться к строке подключения в отношении ошибки 'Data source is not supported'? Это вообще возможно? Обратите внимание, что эта строка подключения находится в моем тестовом проекте. Не в реальном проекте, там строка работает.   -  person Erwin Rooijakkers    schedule 02.12.2013
comment
Замените источник данных на Server. stackoverflow.com/questions/19314320/   -  person user3038092    schedule 02.12.2013
comment
Спасибо. Теперь я получаю эту ошибку: Test Outcome: Failed error 0040: The Type date is not qualified with a namespace or alias. Only primitive types can be used without qualification. Очень странно, так как я везде использую [DataType(DataType.DateTime)].   -  person Erwin Rooijakkers    schedule 02.12.2013


Ответы (1)


Как объяснил user3038092:

При использовании Code First у вас нет файлов .csdl, .ssdl и .msl. Строка подключения также отличается. В основном правильная строка подключения — это то, что описывается как «строка подключения провайдера» в вашей текущей строке подключения.

это решает проблему.

person Erwin Rooijakkers    schedule 04.12.2013
comment
Дайте ссылку вопроса, а не пользователя. - person Altaf Patel; 08.07.2015
comment
@AltafPatel Это первый комментарий под вопросом выше. - person Erwin Rooijakkers; 13.07.2015
comment
Я не вижу комментарий сейчас, вы можете пометить вопрос не пользователя? - person ransems; 13.11.2018
comment
@ransems Как я уже сказал, это первый комментарий под ЭТОТ вопрос. Я скопировал содержимое комментария в этот ответ, если он когда-нибудь исчезнет. Я не знаю, как сделать ссылку на комментарий. - person Erwin Rooijakkers; 13.11.2018