Ticket Hash: | e0509215209071fa779cab17e891e2472e40c4e8 | ||
Title: | ProviderManifest.xml not found | ||
Status: | Closed | Type: | Code_Defect |
Severity: | Critical | Priority: | Immediate |
Subsystem: | LINQ | Resolution: | Duplicate |
Last Modified: |
2011-07-07 04:44:12 13.99 years ago |
Created: |
2011-05-26 15:21:05 14.11 years ago |
Version Found In: | 1.0.72.0 |
Description: | ||||
I stepped on this problem when I was trying to combine sqlite with Entity Framework 4.1.
I always got this error: "The provider did not return a ProviderManifest instance."
After some debugging, i could locate the problem
internal static XmlReader GetProviderManifest()
{
return GetXmlResource("System.Data.SQLite.Resources.SQLiteProviderServices.ProviderManifest.xml");
}
internal static XmlReader GetXmlResource(string resourceName)
{
Assembly executingAssembly = Assembly.GetExecutingAssembly();
Stream stream = executingAssembly.GetManifestResourceStream(resourceName);
return XmlReader.Create(stream);
}
the correct syntax for the string should be {namespace}.{directory}.{filename}
But when you look in the Project Properties, you will see that the default namespace is System.Data.SQLite.Linq and not System.Data.SQLite.
So i changed the default namespace to System.Data.SQLite because all the files are starting with that namespace.
Or you could change the string in the function.
internal static XmlReader GetProviderManifest()
{
return GetXmlResource("System.Data.SQLite.Linq.Resources.SQLiteProviderServices.ProviderManifest.xml");
}
<hr /><i>shane added on 2011-05-27 01:13:47 UTC:</i><br />
Duplicate of [133daf50d6].
|