2011-08-25 4 views
0

성, 이름 및 IdCity 필드가있는 개인 DB 테이블이 있습니다.ASPNET MVC : 필드를 자동 완성하지만 ID를 저장해야합니다.

보기에서는 사용자가 도시를 숫자로 표시 할 수 있도록 자동 완성 필드를 구현했습니다.

idCity를 처리하기 위해 ViewModel을 어떻게 디자인해야하며 어떻게 컨트롤러에 전달할 수 있습니까? 그것은 문자열이지만 ID를 전달하고 db에 아직 없으면 db에 삽입해야합니다. 누구든지 나를 도울 수 있습니까?

답변

1

보기 작업에서 도시 이름을받은 다음이 이름이있는 도시가 있는지 확인하십시오. 그렇다면 ID를 사용하십시오. 새 ID를 만들지 않고 ID를 사용하는 경우 :

public ActionResult Update(PersonModel model) 
{ 
    var city = _cityRepository.GetCityByName(model.CityName); 
    if (city == null) _cityRepository.Add(city); 

    // At this point city.Id contains your city Id 
    var person = new Person 
    { 
     ... 
     CityId = city.Id, 
     ... 
    }; 

    // Proceed to save your Person object 
} 
관련 문제