Здесь: (числа являются произвольными, и вы можете играть с ними, важно, чтобы плавать вход и отрицательный запас на диапазоне, удерживающем измерительный блок)
CSS:
#form>span {
display: inline-block;
padding-top: 5px;
margin-left: -16px;
}
#form>input {
padding: 5px 16px 5px 5px;
float:left;
}
HTML:
lb
Поэтому я перестал пытаться делать это так, как я чувствовал, что это должно быть сделано, и удалил множественное число все вместе. Я точно не знаю наверняка, но я предполагаю, что проблема связана с поддержкой MyFL .net коннектора EF. Вот что я сделал.
Во-первых, в моем методе ApplicationStart произошла ошибка:
//WRONG
//Database.SetInitializer(new DropCreateDatabaseAlways<myDB>());
Database.SetInitializer(new myDBInitializer());
Во-вторых, я перестал вызывать базовую реализацию OnModelCreating, которая не указана в исходном коде, поскольку я реализовал ее только согласно предложению jgauffin:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
//DONT DO THIS ANYMORE
//base.OnModelCreating(modelBuilder);
//modelBuilder.Entity<Vote>().ToTable("Votes")
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}
В-третьих, я читал в некоторых постах, что MySQL .net Connector не позволяет EF фактически СОЗДАТЬ базу данных, поэтому я изначально создал пустую БД. Похоже, это больше не относится к коннектору 6.4.4+, и пока пользователь вашей строки подключения имеет возможность создавать новые базы данных, он работает лучше, если он изначально не существует.
Однажды я сделал все вышеперечисленное, похоже, это сработало. Так что теперь я могу хотя бы двигаться вперед. Надеемся, мы сможем выяснить причину множественного / единственного несоответствия в будущем.
Спасибо всем за их время и усилия.
В вашем классе контекста myDB переопределите следующий метод
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
base.OnModelCreating(modelBuilder);
}
, чтобы он не преобразовывал сгенерированные имена таблиц.
Снимите флажок «Плюрализовать или сгенерировать имена генерируемых объектов» при создании объекта сущности.
Откройте класс DbContext
, связанный с таблицами, для которых вы хотите сохранить имя таблицы в единственном числе.
Если вы используете EF 6, добавьте ссылку на:
using System.Data.Entity.ModelConfiguration.Conventions;
Если это более старая версия, добавьте ссылку на:
using System.Data.Entity.ModelConfiguration.Conventions.Edm.Db;
Наконец, создайте метод который переопределяет OnModelCreating
и удаляет соглашение для множественного числа имен таблиц:
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}
Вам необходимо переопределить OnModelCreating в вашем DbContext, чтобы указать имя таблицы:
modelBuilder.Entity<Vote>().MapSingleType().ToTable("Votes")
Если вы используете Code First с EF 6.1 +, переопределите обработчик события OnModelCreating и выполните следующие вызовы:
dmbCloud.Conventions.Remove<PluralizingEntitySetNameConvention>();
dmbCloud.Conventions.Remove<PluralizingTableNameConvention>();