2013-08-14 2 views

답변

2

정확히 무엇을하고 싶은가에 따라 이러한 공유 기능을위한 장소가 다릅니다. 예를 들어, 작업 필터를 사용하여 로그인 한 사용자에 대한 정보를 확인하기위한 전역 작업 필터로 등록 할 수 있습니다. 또는 데이터베이스에서 데이터를 읽으려면 DAL (데이터 액세스 계층) 클래스를 만들어 별도의 폴더에 저장해야합니다.

컨트롤러간에 코드를 공유하려면 기본 컨트롤러를 만들고 다른 컨트롤러를 상속 받거나 ControllerExtention 클래스를 만들 수 있습니다 (예 : DropDownLists를 채우는 코드).

그래서 원하는 작업을위한 단일 솔루션이 없습니다.

UPDATE : 그런 다음 모든 컨트롤러

public abstract class BaseController : Controller 
{ 
    protected virtual void PopulateDropDownValues() 
    { 
     // Code for populating DropDownLists that are shared by all Views... 
     // ViewBag.DropDownSelectList = selectList; 
    } 
} 

또는 그들 중 일부는 형식이 기본 컨트롤러 상속 할 수 있습니다 : 여기

가 BaseController 클래스의 예입니다

public class HomeController : BaseController 
{ 
} 
+0

답장을 보내 주셔서 감사합니다. 기본 컨트롤러 또는 DropDownlist 채우기에 대한 예제를 만들 수 있습니까? –

+1

업데이트 된 답변보기 – ataravati

+0

나는 그것을 완전하게 얻었다. .. 고마워요. :) –

0

저는 보통 모든 컨트롤러가 상속받은 기본 컨트롤러 클래스를 만들고 여기에 유효성 검사 로직을 가지고 있습니다.

관련 문제