MVC

2016-04-18 6 views
0
にコントローラでサービス層を呼び出すことができません

例外: コントローラー:MVC

Nullreference例外

ここでは私のコードです

private IUserService UserService; 
     public HomeController() 
     { 
     } 
     public HomeController(IUserService UserService) 
     { 
      this.UserService = UserService; 
     } 
    [HttpPost] 
     public ActionResult Register(RegisterViewModel reg) 
     { 
      SADM_Users users = new SADM_Users(); 
      if (reg == null) 
      { 
       return Json(false); 
      } 
      else 
      { 
       FillUserMaster(users, reg); 
       UserService.insertUser(users); 

       ViewBag.ErrorMsg = "Succesfully added"; 
      } 

      return View(); 
     } 


Service Layer: 

    public interface IUserService 
    { 

     void insertUser(SADM_Users users); 
    } 
    public class UserService:IUserService 
    { 
     private readonly ILoginRepository LoginRepository; 
     private readonly IUnitOfWork unitOfWork; 

     public UserService(ILoginRepository LoginRepository) 
     { 
      this.LoginRepository = LoginRepository; 
     } 
     public void insertUser(SADM_Users users) 
     { 
      try 
      { 
       LoginRepository.Add(users); 
       unitOfWork.Commit(); 
      } 
      finally { 
       users = null; 
      } 
     } 
    } 

私はサービス層を持つmvcアプリケーションを作成します。私は私のコントローラで使用しているサービスを呼び出すのに慣れていますが、これらのサービスは呼び出されていません。 この依存関係を知るためには、this.and i wntに関する助けをしてください。

+2

DIライブラリを使用していますか? –

答えて

0

HomeControllerからデフォルトのコンストラクタを削除し、IUserServiceの適切な実装を挿入するDIライブラリを使用していることを確認します。