у нас много проблем, когда мы пытаемся заставить MvcMiniProfiler работать с нашей EF-реализацией шаблона репозитория.
Ошибка:
Тип сущности CustomEntityPewPewFooFoo не является частью модели для
текущий контекст.
Ok. это код, который мы сделали.
Пользовательский контекстный класс UnitOfWork
public class UnitOfWork : DbContext
{
public UnitOfWork(string connectionString)
: base(GetProfiledConnection(connectionString))
{ }
private static DbConnection GetProfiledConnection(string connectionString)
{
var parsedConnectionString = new
EntityConnectionStringBuilder(connectionString);
var connection = new
SqlConnection(parsedConnectionString.ProviderConnectionString);
return ProfiledDbConnection.Get(connection);
}
public void Commit() { ... }
}
Добавить заводские настройки ...
// NOTE: If this is not added, I get an error:
// Unable to find the requested .Net Framework Data Provider.
// It may not be installed.
// In web.config ...
<system.data>
<DbProviderFactories>
<remove invariant="MvcMiniProfiler.Data.ProfiledDbProvider" />
<add name="MvcMiniProfiler.Data.ProfiledDbProvider" invariant="MvcMiniProfiler.Data.ProfiledDbProvider" description="MvcMiniProfiler.Data.ProfiledDbProvider" type="MvcMiniProfiler.Data.ProfiledDbProviderFactory, MvcMiniProfiler, Version=1.7.0.0, Culture=neutral, PublicKeyToken=b44f9351044011a3" />
</DbProviderFactories>
</system.data>
И, наконец, убедитесь, что я говорю кому-то .. ээ ... этот дополнительный материал ....
// global.asax, in Application_Start().. because i'm caching
// some database data on startup.
var factory = new SqlConnectionFactory(ConfigurationManager.ConnectionStrings[0].ConnectionString);
var profiled = new MvcMiniProfiler.Data.ProfiledDbConnectionFactory(factory);
Database.DefaultConnectionFactory = profiled;
LoadApplicationDataToBeCachedForAllRequests(); // Go and hit the Db! Go Forth!!!
О, моя строка подключения ...
<connectionStrings>
<clear />
<add name="XWing_SqlServer_EF" connectionString="metadata=res://*/SqlServer.XWingModel.csdl|
res://*/SqlServer.XWingModel.ssdl|
res://*/SqlServer.XWingModel.msl;provider=System.Data.SqlClient;
provider connection string='Data Source=Tarantino;Initial Catalog=XWing;Integrated Security=SSPI;MultipleActiveResultSets=True;'"
providerName="System.Data.EntityClient" />
</connectionStrings>
И наконец (снова), затем edmx info ..
- Entity Container Name: XWingEntities
- Namespace: XWing.Repositories.SqlServer
- Filename: XWingModel.edmx
А теперь умирает котенок, и я пролил много слез: (
![enter image description here](https://i.stack.imgur.com/1zNgC.jpg)
Может ли кто-нибудь помочь мне спасти котят, помогая решить эту проблему?
![enter image description here](https://i.stack.imgur.com/sOiWE.jpg)