2016-10-14 3 views
0

먼저 교육에 기여한 모든 사람에게 감사드립니다. 많은 도움이되었으며 7 개월 만에 많은 것을 배웠습니다.MVC에서 페이지 뷰 수 및 데이터베이스에 로그인하십시오.

누군가 세부 정보 페이지를 방문 할 때 모든 페이지 뷰를 계산하도록 요청되었습니다. 데이터베이스를 업데이트하여 페이지 뷰 열을 추가했지만 다른 작업을 수행하는 방법이 확실하지 않습니다. 내가 추적하고자하는 페이지이므로 내 컨트롤러 ActionResult에 내 세부 정보 코드를 넣어야한다고 생각합니다. 이것이 틀린 경우에 저를 정정하십시오.

public ActionResult Details(int id, int? yearId) 
     { 
      var dbTest = _testRepository.Id(id); 
      var year = yearId == null ? dbTest.LastYear : dbTest.Date.Single(i => i.Id == yearId); 
      var vm = new DetailsVM 
      { 
       Test = _mapper.Map<TestVM>(year) 
      }; 

      return View(vm); 
     } 

위의 동작 결과입니다. 그것이하는 일은 데이터베이스에서 모든 것을 모으고 세부 사항 cshtml 페이지에 표시합니다. 이 코드는 작동합니다. 각 페이지 뷰를 계산하여 열 이름 페이지 뷰를 사용하여 데이터베이스에 로그인하려면 어떻게합니까? 귀하의 방법을 설명해 주시면 배울 수 있습니다.

편집 :
내가 Google 웹 로그 분석에보고하고 그것이 내가 무엇을 찾고되지 않습니다. 나는 조직을 위해 사용할 무언가를 원한다.

더 많은 정보를 제공 할 데이터베이스 모델도 포함 시켰습니다.

+0

당신이 정말로 걱정하는 것은 당신이 가장 가능성이 Google 웹 로그 분석 또는 이와 유사한 서비스를 조사하는 방법입니다 내 사이트를 사용하는 고객의 경우. 그리고 나만의 코드를 사용하고 싶다면 글로벌 액션 필터를 사용하십시오. –

+0

Google Analytics 사용에 관해 읽었지 만 사용법에 대한 좋은 지침서 나 설명을 찾지 못했습니다. 또는 어디에. – BlowFish

+0

[this] (https://www.google.com/analytics/#/section-quote) 및 [this] (http://stackoverflow.com/questions/21832711/implementing-google-analytics- in-mvc4-c) –

답변

0

ID가 기록 될 때마다 데이터베이스의 페이지 뷰 열에 카운터를 추가하는 방법이 생겨났습니다.

public void AddView(int id) 
    { 
     var view = _context.Tests.Single(i => i.Id == id); 
     view.PageViews++; 
     _context.SaveChanges(); 
    } 
관련 문제