Sorry to insist but it has to be something related to a wrong dbspecific project/reference:
To make it clearer:
In your dbspecific project, you should have a PersistenceInfoProvide with functions that look like:
Private Sub InitAddressEntityMappings()
MyBase.AddElementMapping( "AddressEntity", "AdventureWorks", "Person", "Address", 8 )
MyBase.AddElementFieldMapping( "AddressEntity", "AddressId", "AddressID", False, CInt(SqlDbType.Int), 0, 0, 10, True, "SCOPE_IDENTITY()", Nothing, GetType(System.Int32), 0 )
... some other fields mapping
End Sub
They're called when you first access your adapter and for all the entities of your llblgen project. If your config is fine, you should be able to place a break point next to the InitAddressEntityMappings bit and get to it at run time.
Now those funtion make use of the following core method:
protected void AddElementMapping( string elementName, string catalogName, string schemaName, string targetName, int numberOfFields)
{
try
{
_elementMappings.Add( elementName, new ElementToTargetMapping( catalogName, schemaName, targetName, numberOfFields ) );
}
...some unimportant catching
}
And here's the bit of code that raises your exception:
private ElementToTargetMapping GetElementMappingInfo( string elementName )
{
ElementToTargetMapping toReturn = null;
if( !_elementMappings.TryGetValue( elementName, out toReturn ) )
{
throw new ArgumentException( "The element name '" + elementName + "' isn't known in this provider", "elementName" );
}
return toReturn;
}
As you can see, this is quite straight forward and there's not much place for any other reason than not having the right mappings inserted in the first place.