none
Unable to find the requested .Net Framework Data Provider RRS feed

  • Вопрос

  • Я сделал просто приложение. Использовал EE4 и коннектор с MySQL 

    Локально проект работает прекрасно. Но опубликованное на Win Хостинг выдает

    Unable to find the requested .Net Framework Data Provider.  It may not be installed.
    
    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 
    
    Exception Details: System.ArgumentException: Unable to find the requested .Net Framework Data Provider.  It may not be installed.
    
    Source Error: 
    
    An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
    
    Stack Trace: 
    
    
    [ArgumentException: Unable to find the requested .Net Framework Data Provider.  It may not be installed.]
       System.Data.EntityClient.EntityConnection.GetFactory(String providerString) +242
    
    [ArgumentException: The specified store provider cannot be found in the configuration, or is not valid.]
       System.Data.EntityClient.EntityConnection.GetFactory(String providerString) +307
       System.Data.EntityClient.EntityConnection.ChangeConnectionString(String newConnectionString) +693
       System.Data.Objects.ObjectContext..ctor(String connectionString, String defaultContainerName) +83
       xmlTransfer.Models.newsEntities..ctor() in D:\Temp\xmlTransfer\xmlTransfer\Models\NewsModel.Designer.cs:34
       xmlTransfer.Controllers.xmlController..ctor() in D:\Temp\xmlTransfer\xmlTransfer\Controllers\xmlController.cs:23
    
    [TargetInvocationException: Exception has been thrown by the target of an invocation.]
       System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck) +0
       System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache) +117
       System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipVisibilityChecks, Boolean skipCheckThis, Boolean fillCache) +247
       System.Activator.CreateInstance(Type type, Boolean nonPublic) +106
       System.Web.Mvc.DefaultControllerActivator.Create(RequestContext requestContext, Type controllerType) +84
    
    [InvalidOperationException: An error occurred when trying to create a controller of type 'xmlTransfer.Controllers.xmlController'. Make sure that the controller has a parameterless public constructor.]
       System.Web.Mvc.DefaultControllerActivator.Create(RequestContext requestContext, Type controllerType) +634403
       System.Web.Mvc.DefaultControllerFactory.CreateController(RequestContext requestContext, String controllerName) +93
       System.Web.Mvc.MvcHandler.ProcessRequestInit(HttpContextBase httpContext, IController& controller, IControllerFactory& factory) +346
       System.Web.Mvc.<>c__DisplayClass6.<BeginProcessRequest>b__2() +71
       System.Web.Mvc.<>c__DisplayClassb`1.<ProcessInApplicationTrust>b__a() +19
       System.Web.Mvc.SecurityUtil.ProcessInApplicationTrust(Func`1 func) +161
       System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +405
       System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +375
    
    Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.272

    Все библиотеки что локально что и приложение на хосте одинаковые

    Что с этим делать?

    13 апреля 2012 г. 11:44

Ответы

Все ответы

  • Наверное сборки коннектора MySql отсуствуют на сервере. Вы копируете их на сервер?
    13 апреля 2012 г. 11:51
    Модератор
  • Вот почитайте, хостинг может другой, но суть от этого не меняется.
    • Помечено в качестве ответа DrakonoffNet 16 апреля 2012 г. 14:27
    13 апреля 2012 г. 11:53
    Модератор
  • К сожалению сборка bin есть. Или SDK нужно проинсталить на сервере?
    13 апреля 2012 г. 12:06
  • "Или SDK нужно проинсталить на сервере?" если такая возможность есть то почему бы и нет. А конфигурационный файл у Вас точно верный?
    13 апреля 2012 г. 12:14
    Модератор
  • ваш линк натолкнул меня на то что в строке подключения указан System.Data.EntityClient . Локально проект мой работает возможно это можно найти и положить на хост ?
    13 апреля 2012 г. 12:15
  • Не понял, разве Вы конфигурационный файл не копируете на сервер?
    13 апреля 2012 г. 12:18
    Модератор
  • копируется. А как же без него ! 
    13 апреля 2012 г. 12:19
  • "ваш линк натолкнул меня на то что в строке подключения указан System.Data.EntityClient . Локально проект мой работает возможно это можно найти и положить на хост ?" - не понял смылс этой фразы. У Вас EF 4.0(Model or database first) или 4.x (Code First)?
    13 апреля 2012 г. 12:22
    Модератор
  • Простите не ясно выразился.

    Дело в том что в строка подключения 

        <add name="newsEntities" connectionString="metadata=res://*/Models.NewsModel.csdl|res://*/Models.NewsModel.ssdl|res://*/Models.NewsModel.msl;provider=MySql.Data.MySqlClient;provider connection string=&quot;server=xxxxx;User Id=xxxxx;password=xxxxxx;Persist Security Info=True;database=xxxx&quot;" providerName="System.Data.EntityClient" />

    Упоминается providerName="System.Data.EntityClient на который собственно и ругаться хост. Те этот System.Data.EntityClient есть на машине , а на хостинге нет. Я правильно понял ?

    И у меня EF 4.0(Model or database first)

    13 апреля 2012 г. 12:29
  • Если исаользуете Модель EDMX, копируети ли  строку Entity connection string в web.config

    <add name="TestEntities" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=YATAJGA-PC\SQLEXPRESS2005;initial catalog=Test;integrated security=True;multipleactiveresultsets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
    Так как она может быть сохранена в app.config если сборка данных в отдельном проекте.


    13 апреля 2012 г. 12:30
    Модератор
  • проект простой взять данные из БД и сформировать XML.

     app.config  у мня нет так как использую MVC3

    13 апреля 2012 г. 12:43
  • проект простой взять данные из БД и сформировать XML.

     app.config  у мня нет так как использую MVC3


    Неважно, если Вы создаёте модель данных в отдельном проекте (в отдельной сборке), то строка подключения EDMX ( Entity connection string ) записывается туда, а если у Вас только один проект то в Web.config.
    13 апреля 2012 г. 12:49
    Модератор
  • простите я тогда не понял о чем вопрос. я только недавно начал разбираться EE4/

    Но строка подключения в Web.config есть

    13 апреля 2012 г. 12:55
  • Для работы с EF есть три подхода.

    1. Database first (база данных вначале) создаётесущностные классы на основе базы(EDMX модель).
    2. Model firrs - обратно первому, сначала классы(EDMX) модель а потом база.
    3. Code first - сначала классы (POCO) потом база.

    Какой именно используете Вы?

    13 апреля 2012 г. 13:02
    Модератор
  • Первый вариант Database first
    13 апреля 2012 г. 13:05
  • Если так и не создаёте отдельный проект для модели, то строка подключения EDMX должна быть у Вас в web.config.
    13 апреля 2012 г. 13:09
    Модератор
  • да она же есть я ее раньше публиковал . Или то что я написал это не то ?
    13 апреля 2012 г. 13:18
  • Да она самая, я просто не заметил.
    13 апреля 2012 г. 13:21
    Модератор
  • "Упоминается providerName="System.Data.EntityClient на который собственно и ругаться хост. Те этот System.Data.EntityClient есть на машине , а на хостинге нет. Я правильно понял ?" - если на сервере .Net 4 установлена то эта сборка обязательно есть
    13 апреля 2012 г. 13:24
    Модератор
  • Посмотрите правильны ли строчки в web.config

    Version=6.3.4.0, Culture=neutral, PublicKeyToken=C5687FC88969C44D

    Они должны в точь соответствовать той версии которая установлена у Вас.

    13 апреля 2012 г. 13:33
    Модератор
  • "Упоминается providerName="System.Data.EntityClient на который собственно и ругаться хост. Те этот System.Data.EntityClient есть на машине , а на хостинге нет. Я правильно понял ?" - если на сервере .Net 4 установлена то эта сборка обязательно есть
    Да вы тут все верно. По крайней мере с этим мне понятно
    13 апреля 2012 г. 18:35
  • Посмотрите правильны ли строчки в web.config

    Version=6.3.4.0, Culture=neutral, PublicKeyToken=C5687FC88969C44D

    Они должны в точь соответствовать той версии которая установлена у Вас.

    Проверил, все совпадает 
    13 апреля 2012 г. 18:43
  • Попробуйте выложить проект на другой хостинг, просто протестировать его. Например я использую всегда этот,и очень доволен, там есть тестовый период бесплатно.
    14 апреля 2012 г. 12:23
    Модератор
  • Здравствуйте.

    Вы попробовали другого хостинг-провайдера? Есть ли изменения/результаты?


    Для связи [mail]

    16 апреля 2012 г. 5:30
    Модератор
  • Еще не пробовал . Сегодня сделаю и дам ответ

    Но другой хостинг это не решении 

    16 апреля 2012 г. 5:46
  • "Еще не пробовал . Сегодня сделаю и дам ответ" - хотябы узнаете в чём проблема, в поекте или хостинг-провайдере.
    16 апреля 2012 г. 8:48
    Модератор
  • Вопрос решился. Наверное после обновление EE4 до EE4.1

    Но я таки попробовал разместить на других хостах и к сожелению результат тот же.

    16 апреля 2012 г. 14:27
  • Странно. Так как Вы используете EF Database first, а обновления 4.1 для  Code first. Но в любом случае, хорошо что проблема решилась.
    16 апреля 2012 г. 14:56
    Модератор
  • да это странно глобально я ничего не менял.

    единственное что можно сказать что танец с бубном исполнен в полном объеме :)

    16 апреля 2012 г. 15:51