У меня есть две модели в основной проект Asp.net: Человек и Адрес:Используя частичный вид в ASP.NET MVC один-к-одному отношений
class Person
{
public int Id {get;set;}
public string Name {get;set;}
public int? HomeAddressId {get;set;}
public Address HomeAddress {get;set;}
}
class Address
{
public int Id {get;set;}
public string CityName {get;set;}
...
}
В человеке создать представление мне нужно включать поля для атрибута адреса, используя для этого частичный вид.
Как включить это частичное (или записать это частичное) таким образом, чтобы имена элементов соответствовали правильным атрибутам от модели человека?
Ex .:
<input name="HomeAddress.CityName" />
Учитывая, что эта точка зрения должна быть использована в других, отличных от человека моделей.
я не копал в этом, но вы могли бы потенциально построить custion DisplayName атрибут и использовать его. https://msdn.microsoft.com/en-us/library/system.componentmodel.displaynameattribute(v=vs.110).aspx –
В вашем адресном представлении вы можете сделать следующее: @ Html.TextBox ("HomeAddress. CityName ", Model.CityName), и вы могли бы вызвать его из вашего представления Person следующим образом: @ Html.Partial (" _ Address ", Model.HomeAddress). Мне любопытно, как вы делаете свою общую цель. С тем, что я описал, вы будете ограничены каждым адресом, являющимся домашним адресом. –
@PapaBurgundy, на самом деле, модели имеют только один атрибут адреса (HomeAddress - это просто пример). – Beetlejuice