Чтобы база данных создавалась автоматически, имя строки подключения должно быть названо точно так же, как имя подкласса DbContext (с пространством имен).
Например.Скажем, ваш класс БД выглядит так:
namespace MyNamespace
{
public class FooDb : DbContext
{
public DbSet<XXX> ABC{ get; set; }
}
}
Ваша строка подключения должна выглядеть так:
<connectionStrings>
<add name="MyNamespace.FooDb" connectionString="Data Source=|DataDirectory|MyNamespace.FooDb.sdf" providerName="System.Data.SqlServerCe.4.0"/>
</connectionStrings>