2012-05-10 4 views
1

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

"unable to retrieve metadata for DOTNETMEMBER.Song. Failed to set database initializer type of type DOTNET.DataContextInitializer, DOTNETMEMBER' specified in the application configuration. Entries should be in the form of 'key=DatabaseInitializerForType MyNamespace.MydbContextClass, MyAssembly'. Класс инициализатора должен иметь конструктор без параметров. Подробнее см. Внутреннее исключение.

Вот моя строка соединения

<connectionStrings> 
    <add name="DataContext" 
     connectionString="Data Source=|DataDirectory|RTDOTNETMEMBER.sdf" 
     providerName="System.Data.SqlServerCe.4.0" /> 
    </connectionStrings> 

    <appSettings> 
    <add key="webpages:Version" value="1.0.0.0"/> 
    <add key="ClientValidationEnabled" value="true"/> 
    <add key="UnobtrusiveJavaScriptEnabled" value="true"/> 
    <!--Used to initialize the database--> 
    <add key="DatabaseInitializerForType DOTNET.DataContext, DOTNETMEMBER" value="DOTNET.DataContextInitializer, DOTNETMEMBER" /> 
    </appSettings> 

Является ли это из-за SQL Compact?

ответ

2

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

  1. Перейти в Web.config и закомментируйте строку, содержащую DatabaseInitializerForType ключ (ярлык: наведите курсор на строку затем Ctrl-K и Ctrl-C).
  2. Постройте проект (ctrl-shift-B)
  3. Добавить свой прайс-лист контроллера как обычно.
  4. Раскомментируйте ключ инициализатора в Web.config (ctrl-K, ctrl-U).

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

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