У меня есть следующий класс:EF Code First Имена столбцов
public class CompanyInfo
{
[Key]
public string CompanyId { get; set; }
public string CompanyName { get; set; }
public Address CompanyAddress { get; set; }
}
С соответствующим Адрес класса:
public class Address
{
public string StreetAddress { get; set; }
public string StreetAddress2 { get; set; }
public string City { get; set; }
public string State { get; set; }
public string Zip { get; set; }
public string Plus4 { get; set; }
}
Здесь лежит моя проблема ... адрес теперь генерирует имена столбцов типа:
CompanyAddress_StreetAddress
где я предпочел бы что-то вдоль линии:
PrimaryStreetAddress
Учитывая, что члены класса Адрес не легко доступны для использования с аннотацией данных (с использованием доменных имен Модель/ViewModel структуры) и отображаются в контроллере, как например:
var company = new CompanyInfo
{
CompanyId = GenerateAccountNumber(),
CompanyName = addCompany.CompanyName,
CompanyAddress = new Address
{
StreetAddress = addCompany.StreetAddress,
StreetAddress2 = addCompany.StreetAddress2,
City = addCompany.City,
State = addCompany.State,
Zip = addCompany.Zip,
Plus4 = addCompany.Plus4
},
-- some other fields here --
};
Я знаю, что ViewModel не является подходящим местом, поскольку он просто отображается в контроллере обратно к модели.
Что было бы правильным способом задать имена столбцов для многоразового класса «Адрес»? Я предполагаю, что это можно сделать через FluentAPI, если Entity Framework, но я не уверен, как действовать дальше.
Любая помощь была бы принята с благодарностью.
возможно дубликат [Изменить таблицы и столбца Отображения Entity Framework v4.3] (http://stackoverflow.com/questions/10554888/change-table-and-column-name-mappings-entity-framework -v4-3) – mason
Не дубликат. Познакомьтесь с уникальным вариантом использования. Я видел это до отправки, и это не соответствует моему варианту использования. – New2ASPMVC
@mason это не дублирует этот вопрос, поскольку OP хочет назвать столбец, отсутствующий в его модели, или сгенерированный EF. –